私はこの方法を持っています:
public CampaignCreative GetCampaignCreativeById(int id)
{
using (var db = GetContext())
{
return db.CampaignCreatives
.Include("Placement")
.Include("CreativeType")
.Include("Campaign")
.Include("Campaign.Handshake")
.Include("Campaign.Handshake.Agency")
.Include("Campaign.Product")
.AsNoTracking()
.Where(x => x.Id.Equals(id)).FirstOrDefault();
}
}
インクルードのリストを動的にしたいと思います。私は試した:
public CampaignCreative GetCampaignCreativeById(int id, string[] includes)
{
using (var db = GetContext())
{
var query = db.CampaignCreatives;
foreach (string include in includes)
{
query = query.Include(include);
}
return query.AsNoTracking()
.Where(x => x.Id.Equals(id)).FirstOrDefault();
}
}
しかし、それはコンパイルされませんでした。このエラーが発生しました:
タイプ 'System.Data.Entity.Infrastructure.DbQuery' を 'System.Data.Entity.DbSet' に暗黙的に変換することはできません。明示的な変換が存在します (キャストがありませんか?)
インクルードのリストを動的にする方法を知っている人はいますか?
ありがとう