2009-09-14 11 views
3

Je voudrais UCASE ou ToUpper une colonne dans ma requête LINQ.Comment afficher une colonne en majuscule dans une requête LINQ to SQL?

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

Si je tente d'exécuter le code suivant:

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

Je reçois le message d'erreur suivant sur la compilation:

membre non valide type anonyme déclarateur. Les membres de type anonyme doivent être déclarés avec un membre affectation, nom simple ou membre accès.

Répondre

12

Utilisez ToUpper() ... mais vous devrez spécifier le nom de la propriété dans le type anonyme car il ne peut plus être déduit.

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