我一直在使用Model-First和DbSet代码生成。现在我想要做的是添加一些存储过程。
但是我得到的代码是这样的:
public virtual ObjectResult<Nullable<int>> CountPostsInThread(Nullable<int> threadID, ObjectParameter postCount)
{
var threadIDParameter = threadID.HasValue ?
new ObjectParameter("threadID", threadID) :
new ObjectParameter("threadID", typeof(int));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<Nullable<int>>("CountPostsInThread", threadIDParameter, postCount);
}现在,我该如何摆脱所有这些呢?是tt文件有问题,还是我的存储过程有问题?SP:
ALTER PROCEDURE dbo.sp_CountPostsInThread
(
@threadID int,
@PostCount int = 0 OUTPUT
)
AS
SELECT COUNT(*)
FROM PostSet
WHERE PostSet.ThreadID = @threadID 发布于 2011-06-08 04:04:24
模板或存储过程没有任何错误。SP的参数接受空值,因此EF使它们可以为空。之所以使用三元运算符,是因为如果传递null,EF必须以某种方式传递null参数类型,以正确设置内部使用的SqlParameter。
https://stackoverflow.com/questions/6268708
复制相似问题