を使用する必要がある WinForms プロジェクトに取り組んでいますLinq-To-Sql
。ツールを使用して DataContext を作成し、SqlMetal
いくつかのクエリを作成することができました。しかし、現在、解決できていない問題があります。
私はLEFT OUTER JOIN
次のようにしようとしています:
MyDatabase db = new MyDatabase(...);
var query = from p in db.ParentTable
join t in db.ChildTable on new {A = p.child_ID, B = p.OtherID}
equals new {A = t.ID, B = t.OtherID} into j1
from c in j1.DefaultIfEmpty()
select new
{
...
};
このクエリを記述すると、コンパイル時にjoin
単語でエラーが発生します。
結合句のいずれかの式の型が正しくありません。「GroupJoin」の呼び出しで型の推定に失敗しました
このエラーは、 isとisからのp.child_ID
との比較によって発生することがわかっています。しかし、どうすればこれを解決できますか?このエラーが発生しないようにするにはどうすればよいですか??t.ID
p.child_ID
int?
t.ID
int
LEFT OUTER JOIN
p.child_ID
はint?
、この列が のようにマークされているIS NULL
ためですSQL
。
誰かが私を助けてくれることを願っています。