【发布时间】:2015-03-15 16:59:04
【问题描述】:
我有以下一段运行良好的代码:
ObjectContext octx = new ObjectContext("name=PublisherModelContainer");
ObjectSet<Author> authorSet = octx.CreateObjectSet<Author>();
ObjectQuery<Author> q = authorSet.Where("it.FirstName == @FirstName", new ObjectParameter("FirstName", "Isaak"));
Author a = q.FirstOrDefault();
if (a == null)
{
Console.WriteLine("Author not found");
return;
}
Console.WriteLine("{0} {1}", a.FirstName, a.LastName);
在调用“Where”方法时,FirstName 属性通过“it.FirstName”被引用。这是什么意思?我尝试使用不同的别名,例如“a.FirstName”,但失败并出现异常消息“a.FirstName”无法在当前范围或上下文中解析。
即使在此处的 Microsoft 示例 (https://msdn.microsoft.com/en-us/library/bb338811%28v=vs.110%29.aspx) 中,it.ProductID 也被使用,而不是 t.ProductID。
“它”到底是什么?难道“它”有特殊的含义?
【问题讨论】:
标签: c# entity-framework entity-framework-6 where-clause objectset