在单字段匿名类型linq中组合两个字段值
0I要执行linq select查询以获取匿名类型字段,该字段是两个字段的串联在单字段匿名类型linq中组合两个字段值,linq,select,anonymous,Linq,Select,Anonymous,0I要执行linq select查询以获取匿名类型字段,该字段是两个字段的串联 (from c in ctx.Documents where c.FileName == doc.FileName select new { fileName = c.FileName + "" + c.UploadDate, value = c.UploadDate }).ToList(); 但是这个linq查询抛出了异常 无法强制转换类型'System.Nullable'1[[System.Da
(from c in ctx.Documents
where c.FileName == doc.FileName
select new
{
fileName = c.FileName + "" + c.UploadDate,
value = c.UploadDate
}).ToList();
但是这个linq查询抛出了异常
无法强制转换类型'System.Nullable'1[[System.DateTime,mscorlib,
版本=4.0.0.0,区域性=中性,PublicKeyToken=b77a5c561934e089]'
输入'System.Object'。LINQ to实体仅支持铸造EDM
基本类型或枚举类型
请指导我解决这个错误。我知道这是因为日期与字符串的连接,但我如何解析isse并获得所需的输出
谢谢,
请尽快回复 试着这样做:
(from a in
(from c in ctx.Documents
where c.FileName == doc.FileName
select c).AsEnumerable()
select new { fileName = a.FileName + "" + a.UploadDate,
value = a.UploadDate }).ToList();
试试这个
fileName = c.FileName == null ? String.Empty : c.FileName + c.UploadDate== null ? : String.Empty : c.UploadDate ;
您遇到相同的异常?LINQ to Entities无法识别“System.String ToString()”方法,并且无法将此方法转换为存储表达式。它正在引发相同的异常。请尝试:SqlFunctions.StringConvert(c.UploadDate)或在该异常中尝试:StringConvert((double)c.UploadDate)