このトピックに関するいくつかの質問があります。しかしながら;自分の問題に直接関係するものは見つけられません。LINQの固有値の取得
DBに3つのテーブルがあり、それらの3つのテーブルのPKがXRefテーブルの複合PKを形成します。
レポートに表示するために2つのキーに基づいてDistinct項目を選択する必要があります。
public IEnumerable<AssemblyPrograms> GetProgramAssemblies()
{
var assembliesList = (from c in eModel.Assemblies.ToList()
join d in eModel.Programs_X_Assemblies_X_Builds
on c.AssemblyID equals d.AssemblyID
join p in eModel.Programs
on d.ProgramID equals p.ProgramID
join a in eModel.AssemblyTypes
on c.AssemblyTypeID equals a.AssemblyTypeID
select new AssemblyPrograms
{
AssemblyID = c.AssemblyID
,ProgramID = d.ProgramID
,AssemblyName = c.AssemblyName
,AssemblyPrefixName = c.AssemblyPrefixName
,ProgramName = p.ProgramName
,AssemblyTypeName = a.AssemblyTypeName
,AssemblyTypeID = a.AssemblyTypeID
});
return assembliesList;
}
これは私のクエリと私は私の外部参照テーブルでは、テーブル
から撤退する必要があり、私は私の複合PKとしてAssemblyID、プログラムIDとBuildIDを持っています。
AssemblyIDからProgramIDまでの多対多の関係があります。 BuildIDは、それらを区切るキーです。
レポートのProgramIDリレーションシップにDistinct AssemblyIDをプルする必要がありますが、BuildIDは無視できます。
私の質問では.Distinct()を試していますが、他には役に立たないものがあります。
誰でも私に教えていただけると助かります。
おかげ
これは魅力的だった。迅速な回答をいただきありがとうございます。 – Squeal