代码之家  ›  专栏  ›  技术社区  ›  RSolberg

如何在LINQ到SQL查询中以大写形式输出列?

  •  3
  • RSolberg  · 技术社区  · 15 年前

    我想在我的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 回复  |  直到 15 年前
        1
  •  13
  •   Jon Erickson    15 年前

    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 });