Linqを使用して左結合を試みていて、失敗しています。私はいくつかの例に従うことを試みたが、この(failinmg)LINQクエリになってしまっていますLinqのエンティティへの左結合
var defaultCategories = (from cats in Db.categories
join defaults in Db.payee_default_category on cats.category_id equals
defaults.category_id
into merged
from results in merged.DefaultIfEmpty()
select new {cats.category_id, cats.description}).ToList();
だから、私は私のCategoriesテーブル内のすべての項目を取得する必要があり、Categories.category_id = Payee_Default_Categoryにpayee_default_categoryに参加します.Category_idを返し、Category_id、Category.Description、およびpayee_default_categoryテーブルにレコードがある場合はbooleanを返します。
ただし、実行時に(一致するレコードがある場合、私は...表示されないのですという事実を見下ろす)、私はエラーを取得する:
「エンティティへのLINQのメソッドを認識しない「にSystem.Collections .Generic.IEnumerable 1[Data.payee_default_category] DefaultIfEmpty[payee_default_category](System.Collections.Generic.IEnumerable
1 [Data.payee_default_category]) 'メソッドであり、このメソッドをストア式に変換することはできません。
カテゴリごとに2つのデフォルト設定ができますか?その場合、2つのオブジェクトが同じカテゴリで返されますか? – StriplingWarrior
また、どのバージョンのEntity Frameworkを使用していますか? – StriplingWarrior
受取人は、デフォルトとして多くのカテゴリを持つことができます(ただし、カテゴリは受取人に一度のみリンクする必要があります)。私がやっている質問は、「受取人にデフォルトとして割り当てられたすべてのカテゴリを教えてください」です。 EF版に関して - 私は100%確実ではない。どうすればわかりますか?私はVisual Studio 2010を使用していますが、.NET Framework 3.5を使用しています。 – Craig