私は以下のような三つのモデルを持っているを使用してEntity Frameworkの、3つのテーブルを結合し、グループの連結方式
public class Team
{
public int Id { get; set; }
public string Name { get; set; }
}
public class Document
{
public int Id { get; set; }
public string Name { get; set; }
public string Type { get; set; }
public string Application { get; set; }
public ICollection<DocumentResponsible> DocumentResponsibles { get; set; }
public string Pcda { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime UpdatedAt { get; set; }
}
public class DocumentResponsible
{
public int Id { get; set; }
public int DocumentId { get; set; }
public int TeamId { get; set; }
}
私は3つのテーブルを結合し、1内のすべての文書テーブルのフィールドとチーム名を選択するには、エンティティフレームワークの式を書きたいですドキュメントごとに1行。だから基本的に私は3つのテーブルgroup_concatチーム名を使用して参加したい。次に、Webフォームのgridviewにバインドします。
私が試してみました何、
(from dc in DBContext.Document
join dr in DBContext.DocumentResponsible on dc.Id equals dr.DocumentId
join t in DBContext.Team on dr.TeamId equals t.Id
select new
{
Name = dc.Name,
Type = dc.Type,
Application = dc.Application,
Pcda = dc.Pcda,
}).ToList();
と私はちょうどそれを試してみましたが、
var data = DBContext.Dcoument.Include("DocumentResponsibles").Tolist();
"DcoumentResponsibles"はそのように綴られていますか?それはあなたの命名の残りの部分に適合していないようです。 –
ありがとう、私はタイプミスをしました。 –