linq无法创建“匿名类型”类型的常量值;此上下文仅支持基元类型或枚举类型
来源:互联网 发布:银川网络机柜厂家 编辑:程序博客网 时间:2024/04/28 19:48
from s in data_f2
join d1 in data_co on s.FORECASTTIME equals d1.FORECASTTIME
join d2 in data_NO2 on s.FORECASTTIME equals d2.FORECASTTIME
join d3 in data_SO2 on s.FORECASTTIME equals d3.FORECASTTIME
join d4 in data_O3 on s.FORECASTTIME equals d4.FORECASTTIME
join d5 in data_O38H on s.FORECASTTIME equals d5.FORECASTTIME
join d6 in data_PM10 on s.FORECASTTIME equals d6.FORECASTTIME
join d7 in data_PM25 on s.FORECASTTIME equals d7.FORECASTTIME
select new
{
REGIONCODE = s.REGIONCODE,
MONITORTIME = s.MONITORTIME,
FORECASTTIME = s.FORECASTTIME,
//REGIONNAME = s.REGIONNAME,
CO = (decimal)d1.CO,
NO2 = (short)d2.NO2,
SO2 = (short)d3.SO2,
O3 = (short)d4.O3,
O38H = (short)d5.O38H,
PM10 = (short)d6.PM10,
PM25 = (short)d7.PM25
}).OrderBy(a => a.FORECASTTIME).ToList();
其他信息: 无法创建“匿名类型”类型的常量值。此上下文仅支持基元类型或枚举类型。
从网上查的解决方法是“把查询调整下位置”(d1的当中还有一个实体,不是基元类型。)
如果这里是一个join的话,这个方法可行,改成: from s in data_co
join d1 in data_f2 on s.FORECASTTIME equals d1.FORECASTTIME
但现在有多个join连接,就不好办了
从头到尾捊了一遍,data_f2后添加.OrderBy(t => t.FORECASTTIME).ToList()解决了。但具体原理不明
var data_f2 = (
from s in avgStation
join d in data_f1 on s.STATIONCODE equals d.STATIONCODE
select new
{
REGIONCODE = s.REGIONCODE,
MONITORTIME = d.MONITORTIME,
FORECASTTIME = d.FORECASTTIME,
CO = (decimal)d.CO,
NO2 = (short)d.NO2,
O3 = (short)d.O3,
O38H = (short)d.O38H,
PM10 = (short)d.PM10,
PM25 = (short)d.PM25,
SO2 = (short)d.SO2
}
).GroupBy(t => new { t.REGIONCODE, t.MONITORTIME, t.FORECASTTIME }).Select(s => new
{
s.Key.REGIONCODE,
s.Key.MONITORTIME,
s.Key.FORECASTTIME,
CO = s.Average(x => x.CO),
NO2 = s.Average(x => x.NO2),
O3 = s.Average(x => x.O3),
O38H = s.Average(x => x.O38H),
PM10 = s.Average(x => x.PM10),
PM25 = s.Average(x => x.PM25),
SO2 = s.Average(x => x.SO2)
});
- linq无法创建“匿名类型”类型的常量值;此上下文仅支持基元类型或枚举类型
- Linq查询出现"此上下文仅支持基元类型或枚举类型。"解决方法
- linq中匿名类型
- ibatis支持枚举类型
- 使用枚举类型的值创建枚举类型
- Javascript变量值的类型
- 类的常类型
- 匿名类型
- 匿名类型
- 匿名类型
- 匿名类型
- 匿名类型
- 匿名类型
- 匿名类型
- 匿名类型的创建和使用
- 匿名类型的创建和使用
- C#的匿名类型
- C#的匿名类型
- 占位
- 三极管的检测及其管脚的判别
- Handler的使用
- 占位
- 占位
- linq无法创建“匿名类型”类型的常量值;此上下文仅支持基元类型或枚举类型
- [Android] Dagger2 入门 2
- 水下文字
- 转的真不错
- 剑指Offer_40_数组中只出现一次的数字
- 滴滴美团58携程,那些发生在大并购谈判桌背后的故事
- 占位
- IDEA快捷键
- SurfacaView