LINQ排序规则冲突问题

问题描述:

我使用LINQ to SQL,当我运行此查询LINQ排序规则冲突问题

 var lstData = from s in dataTrackDB.datas 
         join m in dataTrackDB.mkts on s.mktcode equals m.mktcode 
         join n in dataTrackDB.mktnews on m.mktcode equals n.oldmktcode 
         select new data 
         { 
          AccountDes = m.account, 
          commodity = s.commodity, 
          date = s.date, 
          daysvalid = s.daysvalid, 
          mktcode = s.mktcode, 
          mktDes = n.mktdesc, 
          price = s.price, 
          prodid = s.prodid, 
          statecode = s.statecode, 
          subcommodity = s.subcommodity, 
          supprecode = s.supprecode, 
          units = s.units 
         }; 

我会得到“无法解析之间的排序规则冲突规则‘SQL_Latin1_General_CP1_CI_AS’和‘Latin1_General_CI_AS’在等于操作” 。我会很感激,如果有人指导我如何写linq查询?

谢谢

问题就出在你列的collation数据库中,将其更改为相同的排序规则。

在列上设置排序规则可能会影响sql中的比较运算符。

http://www.sqldbadiaries.com/2010/10/31/changing-sql-server-collation/

http://blog.sqlauthority.com/2008/12/20/sql-server-change-collation-of-database-column-t-sql-script/

+1

有没有办法强制通过LINQ的排序规则,你可以在SQL?我有两个数据库,都不允许更改。 – 2015-09-03 08:15:26