不要将存储过程结果作为列表返回。
我的存储过程运行良好,但到目前为止,我已经提出了多个结果。我现在的愿望只带来一个结果。
查看我的查询:
Select product.Name as productName, measure.Abbreviation as measureAbbreviation
From bm_products As product
Join bm_measures As measure On measure.Id = product.MeasureId
Where product.Id = productId;
如您所见,我正在搜索一个具有指定ID的产品。当我执行此过程时,我的结果是:
我已经运行了函数import,并且我使这个构建器(Builders/Products.cs
)向我提供了查询结果:
public static List<getSpecificProductToShoppingList_Result>
BuildItemToShoppingList(Nullable<int> productId)
{
List<getSpecificProductToShoppingList_Result> product =
db.
getSpecificProductToShoppingList(productId).
ToList<getSpecificProductToShoppingList_Result>();
return product;
}
是的,它正在生成一个List,因为我说要生成,但关键是:我只有一个结果 - 我不需要结果列表。
如何将构建器更改为我想要的工作?
我正在使用C#.Net + MVC 4 + Entity Framework 5 + Razor Engine。
有人对我的问题不屑一顾。为什么呢?
答案 0 :(得分:1)
public static getSpecificProductToShoppingList_Result
BuildItemToShoppingList(Nullable<int> productId)
{
getSpecificProductToShoppingList_Result product =
db.
getSpecificProductToShoppingList(productId).FirstOrDefault();
return product;
}
将返回列表中的第一个对象,如果没有此类对象,则返回null。