我创建了一些可供用户使用的过滤器。因此,用户可以向我发送价值或者可以。如何检查用户是否向我发送了值或仅为null?现在我这样检查它,它的工作,但这不是理想的解决方案:
Drawable drawable = ContextCompat.getDrawable(this, R.drawable.fade_red);
dataset.setFillDrawable(drawable);
答案 0 :(得分:0)
你可以尝试这样的东西,我也看到它经常在存储过程中使用(我添加了前三个搜索选项,但你可以添加任意多个):
Public ActionResult Index(int? searchStuff, int? searchCustomer, int? searchWorker)
{
myOrders = db.Orders
.Where(o => (searchStuff == null || o.StuffId == searchStuff)
&& (searchCustomer == null || o.CustomerId == searchCustomer)
&& (searchWorker == null || o.WorkerId == searchWorker));
}
答案 1 :(得分:0)
我做了以下事情:
var stuff = db.Orders.AsQueryable();
if(searchStuff.HasValue)
{
stuff = stuff.Where(x=>x.stuffId == searchStuff.Value);
}
if(searchCustomer.hasValue)
{
stuff = stuff.Where(x=>x.CustomerId == searchCustomer.Value);
}
以此类推。使用这种方法,您可以执行更复杂的过滤器,例如日期范围。