微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 使用LINQ to SQL的奇怪的排序规则问题

我在LINQ-sql中遇到了最奇怪的归类错误.我有这个查询,在2个参数上执行左外连接.从查询中,我想为左连接表提取一个列,如果它不是null,否则从第一个表中提取.有问题的字段是char,两个表都具有相同的排序规则. LINQ代码如下所示,我将粗体输入导致错误的行.

from contentList in dc.ContentList  
   join portalPriceClass in dc.PortalContentPriceClass  
   on contentList.ContentID equals portalPriceClass.ContentID  
   into ppc 
from portalSpecificPriceClass in ppc.Where(portalPriceClass => 
   portalPriceClass.PortalID==portalId).DefaultIfEmpty()  
where contentListPriority.PortalID == portalId  
select new  
{  
   ID = content.ID,PriceClass = (portalSpecificPriceClass == null) ? contentGame.PriceClass : portalSpecificPriceClass.PriceClass 
};

不幸的是,我收到以下错误,找不到任何可以解释的内容

System.Data.sqlClient.sqlException: Implicit conversion of char value to char cannot be performed because the collation of the value is unresolved due to a collation conflict.

解决方法

你可以用sp_help检查你的表,看看列中是否有不同的排序规则.

关于该问题here还有一个非常直接的解释

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐