如何在LINQ to SQL查询中输出大写的列?

RSo*_*erg 3 c# linq linq-to-sql

我想在我的LINQ查询中使用UCASE或ToUpper列.

var query = from rsn in db.RSLReasons
            orderby rsn.REFCMNT
            select new {rsn.REFCODE, rsn.REFCMNT};
dtReasons = query.ToADOTable(rec => new object[] { query });
Run Code Online (Sandbox Code Playgroud)

如果我尝试运行以下代码:

var query = from rsn in db.RSLReasons
            orderby rsn.REFCMNT
            select new {rsn.REFCODE, rsn.REFCMNT.ToString()};
dtReasons = query.ToADOTable(rec => new object[] { query });
Run Code Online (Sandbox Code Playgroud)

我在编译时收到以下错误消息:

无效的匿名类型成员声明符.必须使用成员分配,简单名称或成员访问声明匿名类型成员.

Jon*_*son 13

使用ToUpper()...但您需要在匿名类型中指定属性名称,因为无法再推断它.

var query = from rsn in db.RSLReasons
            orderby rsn.REFCMNT
            select new {rsn.REFCODE, REFCMNT = rsn.REFCMNT.ToUpper()};

dtReasons = query.ToADOTable(rec => new object[] { query });
Run Code Online (Sandbox Code Playgroud)