我在使用DataSet ORM时对Entity Framework ORM不熟悉我可以简单地将存储过程结果分配给变量,如
MyDataSetTblAdapter MyData = new MyDataSetTblAdapter();
string Result = Mydata.MyStoredProcedure().ToString();
它工作正常..但在实体框架中我正在尝试相同的
OnlineDvdShopDbEntities dbContext = new OnlineDvdShopDBEntities();
String Result = DbContext.SpAddGetUsername().ToString();
请记住,我的存储过程返回单个值
答案 0 :(得分:0)
这很简单。
// Initialize dependency to data entities
private Entities _dataContext;
public ClassName()
{
_dataContext = new Entities();
}
public IQueryable<EntityName> MethodName(string filter)
{
// Initialize
var records = _dataContext.Entity
// Constrain your results
.Where(
x => filter == null
|| x.Property1.Contains(filter)
);
return records;
}
如果您只想要一个值,那么您可以使用
var records = _dataContext.Entity.FirstrDefault();
FirstOrDefault()基本上返回符合条件的序列的第一个元素。你也可以使用SingleOrDefault(),然后只需要一个结果。
https://msdn.microsoft.com/en-us/library/vstudio/bb340482%28v=vs.100%29.aspx https://msdn.microsoft.com/en-us/library/vstudio/bb342451%28v=vs.100%29.aspx