リレーションシップを持ついくつかのレガシー テーブルを使用していますが、それらのリレーションシップはプライマリ/外部キーとして明示的に設定されていません。「Linq To Sql Classes」を使用して .dbml ファイルを作成し、適切な Case.CaseID = CaseInfo.CaseID 関連付けを確立しました。結果のクラスは CasesDataContext です。
マイ テーブル (1 対多):
Case
------------------
CaseID (int not null)
MetaColumn1 (varchar)
MetaColumn2 (varchar)
MetaColumn3 (varchar)
...
CaseInfo
------------------
CaseInfoID (int)
CaseID (int nulls allowed)
CaseInfoMeta (varchar)
...
私は LinqToSQL を初めて使用し、実行に問題があります..
CasesDataContext db = new CasesDataContext();
var Cases = from c in db.Cases
where c.CaseInfo.CaseInfoMeta == "some value"
select c;
(編集) 私の問題は、CaseInfo または CaseInfos が Cases のメンバーとして利用できないことです。
同僚から、ADO.Net Entity Data Model を使用してデータ コンテキスト クラスを作成する可能性があると聞きましたが、まだ試していないので、時間を無駄にするか、別のルートに進むべきかを知りたいと思っていました。ヒント、リンク、ヘルプをいただければ幸いです。