2010-08-09 5 views

Répondre

1

avec une projection:

var result = ctx.Source.Where(...).Select(i => CostCentre == "" ? "Unknown" : CostCentre); 

devrait vous donner une IQuerialable de chaînes.

1

Je suppose que la meilleure solution pour vous consiste à utiliser un type anonyme dans votre sélection —, c'est-à-dire que vous créez une propriété personnalisée/calculée dans une situation de classe unique. La sélection d'un type anonyme vous permet de le faire:

var items = from testItem in context.TestItems 
      select new { CostCentre = (testItem.CostCentre == "" ? "[Unknown]" : testItem.CostCentre) }; 

Cela se traduira par des éléments étant un type personnalisé IQueryable où chaque élément a une propriété unique de CostCentre qui est une chaîne de type. Si tout ce que vous voulez vraiment est les chaînes, vous pouvez vous retrouver avec une chaîne <IQueryable> si vous simplifiez ainsi:

var items = from testItem in context.TestItems 
      select testItem.CostCentre == "" ? "[Unknown]" : testItem.CostCentre; 

J'espère que cela aide. Vous aurez plus de complications si vous voulez plus d'une propriété, mais c'est un bon point de départ.

Questions connexes