私はNHibernateは3NHibernateは3 - 左が再LINQのソリューションを参加
して以下var items = from c in session.Query<tbla>()
join t in session.Query<tblb>() on c.Id equals t.SomeId into t1 // use left join on trades.
from t2 in t1.DefaultIfEmpty()
select new {item = c, desc = t2.Description};
このLINQクエリを実行するために、これは私の知る限り、LINQに参加左を実行するための株式の方法ですしようとしています。しかし、それは私にサポートされていない例外メッセージを与えています。 HQLに頼らずに基本的な左結合を達成するにはどうすればよいですか?これは、nHibernateのような普及しているORMが、左の結合として歩行者として何かをサポートすることができないということはやや馬鹿げているようです。
[編集]
私は以下の自分の質問に本当の答えを入れました。
私は迷っています。この例の「c.Id上のt.omeIdとt1との等価」と「new {item = c、desc = t2.Description}」はどこにありますか?あなたは例やコメントを拡張できますか? – mayu
回答が間違っています。どうしてあなた自身の答えを提出しないのですか?私はそれに投票するだろう。 – mayu
よろしくお願いします。私の編集内容を回答に移動しました。結合マジックは、その式の 'SelectList'節で起こります。うまくいけば助けてくれます。 2番目のクエリーは、最初のクエリーで完全に論理的に一致するロジックではないため、リンゴとリンゴの比較はありません。 – James