我有数据库表调用dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
并且有一个AB_Product
字段调用DateTime
CreatedDate
作为日期后,我想要全部列出
publishdatefrom
CreatedDate
的产品
publishdatefrom
后,我想要列出所有产品的列表
在publishdateto
CreatedDate
publishdatefrom
和publishdateto
后,我想要
列出publishdatefrom
之间的所有产品
CreatedDate
和publishdatefrom
我有以下方法来检索符合publishdateto
和publishdatefrom
过滤器的产品。
publishdateto
但是如果这个值包含 [HttpGet]
public JsonResult Fetch_Products(DateTime? publishdatefrom, DateTime? publishdateto)
{
IEnumerable<ProductCollection> products = (from P in db.AB_Product
join S in db.AB_Subsidary on P.Subsidary_ID equals S.SubsidaryID
select new ProductCollection
{
Product_ID = P.ProductID,
Product_Name_En = P.ProductTitleEn,
Product_Name_Ar = P.ProductTitleAr,
ProductType_ID = P.ProductTypeID,
ProductCategory_ID = P.ProductCategoryID,
Susidary_ID = P.Subsidary_ID,
Country_ID = S.Country,
CreatedDate = S.CreatedDate
}).ToList();
if (publishdatefrom.HasValue & !(publishdateto.HasValue))
{
DateTime d1 = publishdatefrom.Value.Date;
products = products.Where(p => p.CreatedDate >= d1);
}
if (!(publishdatefrom.HasValue) & publishdateto.HasValue)
{
DateTime d1 = publishdateto.Value.Date;
products = products.Where(p => p.CreatedDate < d1);
}
if (publishdatefrom.HasValue & publishdateto.HasValue)
{
DateTime d1 = publishdatefrom.Value.Date;
DateTime d2 = publishdateto.Value.Date;
products = products.Where(p => p.CreatedDate >= d1 | p.CreatedDate < d2);
}
var data = products.Select(p => new
{
Product_ID = p.Product_ID,
Product_Name_En = p.Product_Name_En,
Product_Name_Ar = p.Product_Name_Ar,
});
return Json(data, JsonRequestBehavior.AllowGet);
}
和publishdatefrom
过滤器,我可以得到结果,如果它只有publishdateto
或publishdatefrom
我看不到任何结果。
我错过了什么。?
我也尝试过像
那样publishdateto
但是当它有一个值时没有列出任何内容。
答案 0 :(得分:1)
&
和&&
在C#中不是一回事。在构建条件时尝试使用正确的:
if (publishdatefrom.HasValue && !publishdateto.HasValue)
也在这里:
if (!publishdatefrom.HasValue && publishdateto.HasValue)