【发布时间】:2014-02-14 13:31:07
【问题描述】:
在 MVC 中,如果我需要使用主键从数据库中获取一个对象,我可以使用 find 函数:
public static Element List(Guid id)
{
DBContext db = new DBContext();
return db.Elements.Find(id);
}
获取对象集合最有效的方法是什么?
这似乎不是很有效,尽管它会起作用:
public static IEnumerable<Element> List(IEnumerable<Guid> ids)
{
foreach (Guid id in ids)
yield return Get(id);
}
大概每次调用Get都是一个数据库请求。
有没有像 Find 这样的功能,我可以只传递一组主键并取回一个集合?我没看到,写一个最好的方法是什么?
【问题讨论】:
-
ids可以包含多少个元素? -
我预计不会超过几十个,但更多时候不会是单个数字。
标签: c# linq entity-framework asp.net-mvc-4 dbcontext