конфликт сопоставления - PullRequest
       10

конфликт сопоставления

8 голосов
/ 09 февраля 2010

Есть ли кто-нибудь, кто знает, как мы можем решить проблему сопоставления в запросе select linq? Я получаю эту ошибку, когда хочу выбрать данные в linq.

Невозможно разрешить конфликт параметров сортировки между «SQL_Latin1_General_CP1_CI_AS» и «Latin1_General_CI_AS» в операции равных

var lstData = from s in dataTrackDB.datas
              join b in dataTrackDB.brandDatas on i.brandcode equals b.brandcode
              join b in dataTrackDB.brandDatas on i.brandcode equals b.brandcode
              join b in dataTrackDB.brandDatas on i.brandcode equals b.brandcode
              join m in dataTrackDB.mktDatas on s.mktcode equals m.mktcode
              select new dataView { 
                  Account=m.account,
                  brandcode=b.brandcode,
                  commodity=s.commodity,
                  date=s.date,
                  daysvalid=s.daysvalid,
                  mfrcode=b.mfrcode,
                  mktcode=s.mktcode,
                  price=s.price,
                  prodid=s.prodid,
                  statecode=s.statecode,
                  subcommodity=s.subcommodity,
                  supprecode=s.supprecode,
                  units =s.units 
              };

lstData = lstData.AsQueryable().Where(x => x.mfrcode == mfr );

return lstData.Take(100).ToList();

Ответы [ 2 ]

4 голосов
/ 09 февраля 2010

Проблема не в Linq, а в вашей базе данных

вы можете, например, создать объединяющее представление и выбрать данные в linq из представления

SELECT * FROM T1
INNER JOIN T2 ON 
T1.Name COLLATE Latin1_General_CI_AS = T2.Name COLLATE Latin1_General_CI_AS

или выберите сначала данные в linq2sql отдельно для каждой таблицы, а затем объедините их с помощью linq2object

0 голосов
/ 28 сентября 2017

добавить COLLATE DATABASE_DEFAULT в конце запроса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...