0
次のコードは、現在、データベースに接続を3回開いて各オブジェクトを引き出します。EFコアの複数のテーブルからデータを取り出すシングルデータベース呼び出し
データベースが一度しかヒットしないため、私が探しているすべてのオブジェクトを取り戻すためのより良い方法がありますか?
var metadataResult = new MetadataViewModel
{
Milestones = goalsContext.Milestones.Select(m => new MilestoneViewModel
{
Id = m.Id,
Name = m.Name,
Year = m.Year,
Date = m.Date
}),
Aggregates = goalsContext.Aggregates.Select(a => new AggregateViewModel
{
Id = a.Id,
Name = a.Name
}),
Metrics = goalsContext.Metrics.Select(m => new MetricViewModel
{
Id = m.Id,
Name = m.Name,
Description = m.Description
})
};
短い回答:いいえ。 EF6では、EntityFramework.Extendedの将来のクエリを使用してこれを行うことができます。 –
私はSQLデータベースのエキスパートではありませんが、私のAPIコールでデータベースへの多数の接続を行い、単一の複雑なviewmodelオブジェクトを水和することは非常に非効率的です。上記は複雑なものではなく単純な見解です。 – twilliams