Je suis un débutant à C# et je construis une application qui contient le contenu d'une bibliothèque (livres et revues).convertir le dictionnaire en une requête linq
Je construis un programme à trois niveaux avec UI, BLL et DAL. Ce que j'essaye de faire est d'obtenir le texte d'une liste déroulante et de le convertir (finalement) dans mon DAL à une requête de Linq à SQL. J'ai créé une base de données locale et l'ai mappée avec le framework Entity.
Je le code suivant:
BL.MainLogic BLL = new MainLogic();
Dictionary<string, string> searchList = new Dictionary<string, string>();
searchList.Add("ItemID", cmboBxItemID.Text);
searchList.Add("ItemName", cmboBxItemName.Text);
searchList.Add("ItemType", cmboBxItemType.Text);
searchList.Add("Author", cmboBxAuthor.Text);
searchList.Add("Publisher", cmboBxPublisher.Text);
searchList.Add("Price", cmboBxPrice.Text);
DataTable searchResult = BLL.Search(searchList);
searchGridView.DataSource = searchList;
Je crée un dictionnaire avec le nom de la colonne et la valeur à rechercher par et je transmettre à la BL:
public DataTable Search(Dictionary<string,string> SearchParams)
{
var itemType = SearchParams.FirstOrDefault(x => x.Key == "ItemType");
IQueryable query = SearchParams.AsQueryable();
}
maintenant, ce que je suis en train de faire est de créer une requête de toutes les clés & valeurs dans le dictionnaire dans le format de:
== Valeur clé.
Comment puis-je faire cela d'une meilleure manière? Devrais-je même utiliser un dictionnaire pour ce type d'action?
Peut-être que ce lien peut vous aider: [Dynamic LINQ] (http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query -library.aspx) –
merci, j'ai fini par passer des valeurs avec une classe j'ai créé, mais merci pour cela! :) –
@yuvalos si vous avez résolu votre problème s'il vous plaît poster votre résolution et accepter. – emd