我正在使用以下代码:

from c in Country
 where c.IsActive.Equals(true)
 orderby c.CountryName
 select new
 {
     countryIDCode = c.CountryID + "|" + c.TwoDigitCode,
     countryName = c.CountryName
 }

但是我在运行它时收到此错误:



CountryID 是 int 类型,TwoDigitCode 是 string 类型。

如何正确连接?

最佳答案

如果此错误阻止您继续进行并且是一个小数据集,您可以通过枚举查询(调用 ToList)来从数据库中获取数据。从那时起,您的操作将针对内存中的对象,您可能不会遇到收到的错误。

var countries = (from c in Country
where c.IsActive.Equals(true)
orderby c.CountryName
select c).ToList();


var countryCodes = (from c in countries
where c.IsActive.Equals(true)
    orderby c.CountryName
    select new
    {
        countryIDCode = c.CountryID + "|" + c.TwoDigitCode,
        countryName = c.CountryName
    });

关于linq - 在 LINQ to Entities 中连接 int 和 string,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2682264/

10-16 16:44