這是我簡化示例中的問題。實體在LINQ to Entities中不可用的屬性
我從SQL Server數據庫建模兩個實體:
- 訂單(列可用=訂單ID,PackageCount,ManufactureDate可以,並按ShipDate,StatusID)主鍵=的OrderID)
- OrderRecipients(可用= RecipientID列,名字,姓氏,地址,城市,郵政編碼,國家,訂單ID;外鍵=訂單ID)
Orders和OrderRecipients之間存在[1到多]關係。一個訂單可以有幾個收件人。
我想通過下面的代碼提取訂單的收件人。
var allmyrecipients = from o in mycontext.Orders
where (o.SiteID.Equals("NYC") || o.SiteID.Equals("SFO"))
select o.OrderRecipients;
然而,當我試圖讓下面的代碼收件人的名字:
foreach (var recipient in allmyrecipients)
{
Console.WriteLine(recipient.FirstName);
}
名字和收件人的其他屬性都無法在智能感知下拉。我得到「不包含名字的定義」錯誤。
這是什麼和補救措施是什麼?我在這裏做錯了什麼?我正在與VS 2010,Entity Framework 4一起工作。
謝謝你抽出時間幫忙。
UPDATE1:我想這段代碼,它不會引發錯誤:'的foreach(在allmyrecipients VAR收件人){的foreach(在收件人變種R){Console.WriteLine(R 。名稱); }}這是爲什麼? – FMFF