私は選択を行っているこのlinqクエリを持っており、合計を合計するために、各グループキーの下で合計を合計しようとしています。値は文字列であり、文字列を合計することはできません。ただし、intに変換しようとすると、エラーが発生します。LINQからintへの変換
LINQ to Entitiesは、メソッド 'Int32 ToInt32(System.String)'を認識せず、このメソッドをストア式に変換できません。
var dataSet = entities.BL_MT_CATEGORY
.Distinct()
.Where(d => (iGeography.FirstOrDefault() == "" || iGeography.Contains(d.Geography))
&& (iRetailer.FirstOrDefault() == "" || iRetailer.Contains(d.Retailer))
&& (iCountry.FirstOrDefault() == "" || iCountry.Contains(d.Country))
&& (iAirport.FirstOrDefault() == "" || iAirport.Contains(d.Airport))
&& (iShop.FirstOrDefault() == "" || iShop.Contains(d.StoreName))
&& (iCategory.Contains(d.Category))
&& (d.Values == "Sum of EuroValue"))
.GroupBy(x => x.Category)
.Select(g => new {
C201408 = g.Sum(x => Convert.ToInt32(x.C201408))
})
.ToList();
@vendettamit 'string'と' int'の間に明示的なキャストはありません。 – Abion47
エンティティ・フレームワーク関数、 –