Est-ce possible ... ??? J'ai 4 DropDownLists sur ma page principale et l'utilisateur peut choisir parmi tout, tout ou partie de les DropDownLists. Je capture leur sélection (ou non-sélection) en utilisant une variable SESSION . Ce que je voudrais pouvoir faire est de passer les valeurs de variable de session à ma couche d'accès aux données et de construire une clause WHERE (peut-être en utilisant StringBuilder) puis de placer cette variable SOMEHOW dans mon expression de requête. Est-ce possible??? Désolé, je suis un débutant. Merci ~ ~ susanRequête complexe LINQ to Entities
public class DLgetRestaurants
{
FVTCEntities db = new FVTCEntities();
public List<RESTAURANT> getRestaurants(string cuisineName, string priceName, string cityName)
[Build a string based on the values passed to the function]
{
var cuisineID = db.CUISINEs.First(s => s.CUISINE_NAME == cuisineName).CUISINE_ID;
List<RESTAURANT> result = (from RESTAURANT in db.RESTAURANTs.Include("CITY").Include("CUISINE").Include("Price")
where **[USE STRINGBUIDER EXPRSSION HERE]**
select RESTAURANT).ToList();
return result;
}
}
Je ne suis pas familier avec la façon de faire cela. Avez-vous un échantillon ??? – Susan
Vous devez ajouter une référence à System.Linq.Dynamic. Ensuite, vous pouvez écrire votre requête comme ceci db.Restaurants.Where (myFilter). Myfilter est une chaîne qui peut contenir quelque chose comme "cuisine_name = 'Italian'" – boca
Wow, merci! Cela m'a beaucoup aidé à simplifier mon code. Cordialement, ~ susan ~ – Susan