Entity Frameworkでは、カスタムクエリをオンザフライで実行してバインドできます...
protected class NitrogenMoisutreContainer
{
public double MinN { get; set; }
public double MaxN { get; set; }
public double MinM { get; set; }
public double MaxM { get; set; }
}
// ...
var q = dbcontext.Database.SqlQuery<NitrogenMoisutreContainer>(@"SELECT MAX(NitrogenBalance) as MaxN, MIN(NitrogenBalance) as MinN, MAX(FCWaterPercent) as MaxM, MIN(FCWaterPercent) as MinM
FROM agZoneProjectionGrowthStages
WHERE NitrogenBalance > 0 AND FCWaterPercent > 0").First();
問題は、私にとって、これは厄介だと感じることです。1つのクエリに対してこのクラスを作成する必要があり、他の目的でこのクラスを再び使用することはありません。結果は、実行された場所からちょうど1行下で使用されます。
匿名タイプを返す方法はありますか?私が最初にそれを宣言しなければならなかったとしても、このように...
var anonItem = new {
MinN = 0d,
MaxN = 0d,
MinM = 0d,
MaxM = 0d
};
var q = dbcontext.Database.SqlQuery<anonItem.GetType()>("...");
Type
匿名タイプをとして渡す方法がわかりませんT
。出来ますか?