按日期搜索结果

时间:2015-12-29 11:58:39

标签: c# json asp.net-mvc linq razor

enter image description here

我有数据库表调用dependencies { classpath 'com.android.tools.build:gradle:1.5.0' } 并且有一个AB_Product字段调用DateTime

  1. 用户输入CreatedDate作为日期后,我想要全部列出 publishdatefrom
  2. 之上CreatedDate的产品
  3. 用户输入publishdatefrom后,我想要列出所有产品的列表     在publishdateto
  4. 下方CreatedDate
  5. 用户输入publishdatefrompublishdateto后,我想要     列出publishdatefrom之间的所有产品     CreatedDatepublishdatefrom
  6. 我有以下方法来检索符合publishdatetopublishdatefrom过滤器的产品。

    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过滤器,我可以得到结果,如果它只有publishdatetopublishdatefrom我看不到任何结果。

    我错过了什么。?

    我也尝试过像

    那样
    publishdateto

    但是当它有一个值时没有列出任何内容。

1 个答案:

答案 0 :(得分:1)

&&&在C#中不是一回事。在构建条件时尝试使用正确的:

if (publishdatefrom.HasValue && !publishdateto.HasValue)

也在这里:

if (!publishdatefrom.HasValue && publishdateto.HasValue)