是如何处理很多可能的值来进行查询的呢?我正在构建一个MVC应用程序,用户可以在其中使用大量过滤器来获得他想要的东西。以下是基于控制器方法的过滤器概述:////GET:/Card/SearchIndexpublicActionResultSearchIndex(stringobjName,stringobjType,stringobjCostSymbol,stringobjCost,stringpowerSymbol,stringpowerValue,stringratingSymbol,stringratingValue,//此处有更多代码...}我想知道处理所有这些过滤器的最佳方法,以及如何根据给定的参数获取objInfo列表。请记住,某些值可能为空。到目前为止我所做的就是加载“所有”objInfo,然后通过删除我不需要的项目对它们进行排序,这对我来说似乎“不聪明”,但我是MVCApp的新手,我正在努力寻找a有更好的方法可以做到这一点。编辑这是生成数据的视图:@usingSystem.Web.Mvc.Html@modelPagedList.IPagedList@{ViewBag.Title="SearchIndex";}对象管理@Html.ActionLink("CreateNewObj","Create")@using(Html.BeginForm()){ObjColors:勾选一个框来搜索颜色。全部:@Html.CheckBox("allColor",true)蓝色:@Html.CheckBox("blueColor",true)红色:@Html.CheckBox("redColor",true)黄色:@Html.CheckBox("yellowColor",true)紫色:@Html.CheckBox("purpleColor",true)灰色:@Html.CheckBox("greyColor",true)黑色:@Html.CheckBox("blackColor",true)音乐:@Html.CheckBox("musicColor",true)Obj值:在下面的列表中选择一个值。对象编号:附加成本(包含):@Html.DropDownList("addCost",String.Empty)+@Html.DropDownList("addCost2",String.Empty)+@Html.DropDownList("addCost3",String.Empty)+@Html.DropDownList("addCost4",String.Empty)+@Html.DropDownList("addCost5",String.Empty)+@Html.DropDownList("addCost6",String.Empty)费用:@Html.DropDownList("objCostSymbol","=")@Html.DropDownList("objCost",String.Empty)功率:@Html.DropDownList("powerSymbol","=")@Html.DropDownList("powerValue",String.Empty)Rating:@Html.DropDownList("ratingSymbol","=")@Html.DropDownList("ratingValue",String.Empty)Obj文本:写一个名字,名字的一部分,或者一个词。对象名称:@Html.TextBox("objName")所有者:@Html.TextBox("ownerName")对象类别:在下面的列表中选择一个类别。类型:@Html.DropDownList("objType","All")对象集:@Html.DropDownList("objSet","All")稀有度:@Html.DropDownList("objRarity","All")}@ViewData["ErrorMessage"]ObjNameObjNumberObjColorAdditionalCostCostObjType@Html.ActionLink("Power","SearchIndex",new{sortOrder=ViewBag.PowerSortParm})@Html.ActionLink("Rating","SearchIndex",new{sortOrder=ViewBag.RatingSortParm})RarityObjSetNameOwnerName@foreach(variteminModel){@Html.DisplayFor(modelItem=>item.m_ObjName)}@Html.DisplayFor(modelItem=>item.m_ObjNumber)@Html.DisplayFor(modelItem=>item.m_ObjColor)@Html.DisplayFor(modelItem=>item.m_ObjAddCost)@Html.DisplayFor(modelItem=>item.m_ObjCost)@Html.DisplayFor(modelItem=>item.m_ObjType)@Html.DisplayFor(modelItem=>item.m_ObjPower)@Html.DisplayFor(modelItem=>item.m_ObjRating)@Html.DisplayFor(modelItem=>item.m_ObjRarity)@Html.DisplayFor(modelItem=>item.m_ObjSet.m_ObjSetName)@Html.DisplayFor(modelItem=>item.m_ObjOwner)@Html.ActionLink("编辑","编辑",new{id=item.m_ObjID})|@Html.ActionLink("细节","细节",new{id=item.m_ObjID})|@Html.ActionLink("Delete","Delete",new{id=item.m_ObjID})}页@(Model.PageCount
