是否可以在EF Linq查询中包含可变数量的包含?
目前我有类似的东西:
Form form = db.Forms.Where(m => m.Id == formId).Include("Child").First();
但是可以将它包装成:
GetFormWithIncludes(int formId, string[] includes)
{
Form form = db.Forms.Where(m => m.Id == formId).Include("Each").Include("String").Include("In").Include("includes").First();
}
那么includes
中的每个字符串参数都包含在内吗?
答案 0 :(得分:2)
我不知道为什么这样的东西不起作用。
var query = db.Forms.Where(m => m.Id == formId);
foreach(string s in includes)
{
query = query.Include(s);
}
Form form = query.First();
正常的警告适用。如果包含数组中的字符串不是导航属性,则EF将抛出异常等。
答案 1 :(得分:0)
var entity = db.Forms;
foreach (string s in includes)
{
entity.Include(s);
}
Form form = entity.Where(m => m.Id == id).First();