我想弄清楚我在做下面的LINQ語句錯誤。它不喜歡第三個SELECT
。在我輸入查詢時,它在Intelisense中找到tblAddresse.tblAdminCounty
,但是當我在它後面輸入SELECT時,它會發生怪異現象。LINQ一對多,三級深問題
是否與tblAddress
和tblAdminCounty
有什麼聯繫?我認爲它在Intellisense中根據tblAddress
顯示的事實會使這種說法不言而喻,但顯然不是。
如果我是隻查詢在一個單獨的功能CountyName它是這樣的 - >
var countyName = from adminCounty in context.tblAdminCounties
where adminCounty.CountyID == countyID
select adminCounty.CountyName;
這是基於本網站上的3大層次的方法 - >HERE
var query = from tblBusinesse in context.tblBusinesses
where tblBusinesse.BusinessID == businessID
select new
{
tblBusinesse.BusinessName,
tblBusinesse.ContactName,
tblBusinesse.EmailAddress,
Address = from tblAddresse in tblBusinesse.tblAddresses
select new
{
tblAddresse.AddressLine1,
tblAddresse.AddressLine2,
tblAddresse.AddressLine3,
tblAddresse.CityName,
County = from adminCounty in tblAddresse.tblAdminCounty
select new
{
adminCounty.CountyName
}
}
};
@喬恩飛碟雙向:謝謝你,我似乎從來沒有把我的代碼以正確的格式。我猜這一個人應該解釋很多... – 2010-01-29 21:23:47
我懷疑你也會發現生活更容易,如果你沒有在所有的東西「tbl」:) – 2010-01-29 21:25:42
@Jon Skeet::)的確!幸運的是,在這種情況下,這只是在我發佈的示例代碼中,而不是在我的項目實際代碼庫中。 – 2010-01-29 21:26:42