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

时间:2009-09-14 16:19:35

标签: 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 });

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

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

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

  

无效的匿名类型成员   声明符。匿名类型成员   必须与会员宣布   作业,简单名称或成员   访问。

1 个答案:

答案 0 :(得分: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 });