Je développe une application avec les services RIA, et dans ma classe DomainService, j'ai toutes les fonctions standards générées par le RIA pour les opérations CRUD générales. Le problème est que j'ai essayé de créer ma propre fonction qui instaure la liste de toutes les 45 colonnes dans la déclaration Select, énumérerait seulement 2 (NOM et PRENOM) et aussi selon les paramètres reçus dans la clause Où.Services RIA - Fonction IQueryable avec plusieurs paramètres comme conditions
Les conditions de la clause fonctionnent parfaitement, mais le code renvoie toujours les 45 colonnes au lieu des 2 spécifiées. Voici le code:
public IQueryable<EMPLOYE> GetEMPLOYEs(string strPRENOM, string strNOM)
{
IQueryable<EMPLOYE> query = this.Context.EMPLOYEs.AsQueryable();
//This Doesn't work... all 45 clomuns are returned!!!
query = from e in this.Context.EMPLOYEs select e;
query.Select(e => new { e.PRENOM, e.NOM });
// This Doesn't Work too!!!! Error:Cannot implicitly convert type 'System.Linq.IQueryable<AnonymousType#1>' to 'System.Linq.IQueryable<AffPoste.Web.EMPLOYE>'. An explicit conversion exists (are you missing a cast?)
//query = from e in this.Context.EMPLOYEs select new{e.PRENOM, e.NOM};
// Clause Conditions "Where"
if (!String.IsNullOrEmpty(strPRENOM)) query = query.Where(e => e.PRENOM.Contains(strPRENOM));
if (!String.IsNullOrEmpty(strNOM)) query = query.Where(e => e.NOM.Contains(strNOM));
return query;
}
Merci d'avance.