首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

类型“System.String[]”不支持比较运算符。解决思路

2012-01-20 
类型“System.String[]”不支持比较运算符。returndc.Content.Where(c c.Status status && c.AuditList

类型“System.String[]”不支持比较运算符。

 return dc.Content.Where(c => c.Status == status && c.AuditList.Split(',').Contains(user.id.ToString()))

报错 类型“System.String[]”不支持比较运算符。 
换成
return (from c in dc.GetTable<Content>() let autlist = c.AuditList.Split(',') from temp in autlist where c.Status == status && temp ==user.id.ToString() select c)
依旧 求解。。

[解决办法]
不要把Linq跟Linq2SQL或者Linq2EF这类Linq Provider for DBMS混淆了...Linq能做的它们未必能做...

很明显c.AuditList.Split(',').Contains方法太复杂了,无法翻译成SQL语句...用数据库的存储过程或用户自定义函数做...

热点排行