我是 c# 的新手,我正在构建一个包含图书馆(书籍和期刊)内容的应用程序。
我正在用 UI、BLL 和 DAL 构建一个 3 层程序。
我要做的是从组合框中获取文本并将其(最终)在我的 DAL 中转换为 Linq 到 SQL 查询。我创建了一个本地数据库并将其映射到实体框架。
我有以下代码:
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;
我正在使用列名和要搜索的值创建一个字典,然后将其传递给 BL:
public DataTable Search(Dictionary<string,string> SearchParams)
{
var itemType = SearchParams.FirstOrDefault(x => x.Key == "ItemType");
IQueryable query = SearchParams.AsQueryable();
}
现在我要做的是从字典中的所有键和值创建一个查询,格式如下:
键 == 值。
我怎样才能以更好的方式做到这一点?我什至应该为这种类型的操作使用字典吗?