是否可以在mvc5中查看条件中的TempDate?

时间:2016-12-31 11:11:08

标签: c# asp.net-mvc-5.1 tempdata

我想检查TempData条件中的if。但是我收到了一个错误。

我的控制器

public ActionResult Customer(PurchaseViewModel purchaseviewmodel)
{
    TempData["Fromdt"] = purchaseviewmodel.FromDate;
    TempData["todt"] = purchaseviewmodel.ToDate;
    If(TempData["Fromdt"] == Convert.ToDateTime(“01/01/0001”)&& TempData["todt"] == Convert.ToDateTime(“01/01/0001”))
    {
        //...
    }
    else
    {
        //...
    }
    return View(Customer);
}

为什么我在Tempdata中获取模型值意味着我想将我在TempDate中获取的值传递给另一个动作。所以只有我使用TempData。现在我收到了错误。错误是

  

在object和System.DateTime之间不应用Operator ==。

我尽力解释这个问题。所以任何人都可以帮我解决这个问题。我只需要TempData不将值直接存储在变量中。我可以将值存储在变量中,如

    var  fmdt = purchaseviewmodel.FromDate;
    var  todt = purchaseviewmodel. ToDate;

但是我要求在TempData中存储值只是我的要求,因为我需要在另一个动作中使用TempData值。我需要另一个目的

1 个答案:

答案 0 :(得分:4)

临时数据存储并公开object,因此在您尝试与==进行比较时,DateTime无法正常工作。

您需要施放TempData公开的对象来进行比较。

也无需将字符串转换为datetime。您可以使用DateTime.MinValue

if((Datetime)TempData["FromDate"] == DateTime.MinValue)