【发布时间】:2016-10-13 09:50:37
【问题描述】:
我正在使用 Sp 生成一些逻辑并返回一个表对象。如果没有找到对象,我只是简单地返回一个实体的 null
CREATE proc SpDealerDistributionOracle
(
@DealerCode varchar(50),
@imei varchar(50)
)
as
BEGIN
if (some logic)
select top 1 * from tblBarCodeInv
else
select null;
END
工作正常..但是当我像这样在 EF 6 中编写查询时
tblBarCodeInv returnValue = null;
using (var db=new RBSYNERGYEntities())
{
String query = String.Format("SpDealerDistributionOracle 'DealerCode','101001'");
returnValue = db.Database.SqlQuery<tblBarCodeInv>(query).FirstOrDefault();
}
return returnValue;
它抛出一个异常。
如果找不到返回 null 并在 C# 中执行一些逻辑,我只想返回一个对象。有人可以帮忙吗?
【问题讨论】:
-
但我需要使用 Sp。如您所知,Sps 是预编译的,而函数不是。它们可能是每天 50000+ 次以上的操作。所以最好使用 sp
-
这是使用完整的,但不是我的问题。如果没有找到条目,我只会返回 null ..当我返回它时,它会抛出需要 RecId(Primary key) 的异常
标签: c# asp.net sql-server entity-framework