C# 从变量中的LINQ检索日期

C# 从变量中的LINQ检索日期,c#,asp.net-mvc,linq,linq-to-sql,C#,Asp.net Mvc,Linq,Linq To Sql,我想从数据库中检索日期。我正在使用此LINQ查询: 这是我的全部控制器 [HttpGet] public ActionResult FillSettlementDate(string Tenor1) { DateTime issueDate = Convert.ToDateTime(Session["IssueDate1"]); int aucid = Convert.ToInt32(Session["auctionid"]); string products= Con

我想从数据库中检索日期。我正在使用此LINQ查询: 这是我的全部控制器

[HttpGet]
public ActionResult FillSettlementDate(string Tenor1)
{
    DateTime issueDate = Convert.ToDateTime(Session["IssueDate1"]);
    int aucid = Convert.ToInt32(Session["auctionid"]);
    string products=  Convert.ToString(Session["Product_Id"]);
    var SettleDate =  db.AUCDATA_TENORS
        .Where(c => c.TENOR_ID == Tenor1 && c.ISSUE_DATE == issueDate && c.AUCTION_ID ==aucid  && c.PRODUCT_ID ==products)
        .Select(c => c.SETTLE_DATE).ToList();
    return Json(SettleDate, JsonRequestBehavior.AllowGet);
}
它给了我一个不受支持的例外

System.Data.Entity.dll中出现“System.NotSupportedException”类型的异常,但未在用户代码中处理该异常
其他信息:LINQ to Entities无法识别方法“System.String ToString()”方法,并且无法识别此方法 翻译成商店表达式

我想检索这个日期并用JSON传递它

return Json(SettleDate, JsonRequestBehavior.AllowGet);

尝试选择(c=>c.solate\u DATE.ToString())而不是选择(c=>c.solate\u DATE)。

您说过检索日期,但查询返回一个集合(不是一个日期)。没有您在代码中的任何位置使用过
.ToString()
,因此错误与您显示的内容无关。@StephenMuecke好吧,可能
issueDate
变量是字符串,因此可能要比较
c.ISSUE\u DATE==issueDate
它正在内部尝试将ISSUE\u日期转换为字符串。我们肯定需要更多信息。@CarlosAlejo在这种情况下将无法编译,错误为“无法将日期时间与字符串进行比较”@StephenMuecke先生实际上我正在转换此查询日期之上的发行日期DateTime issueDate=Convert.ToDateTime(会话[“IssueDate1”]);int aucid=Convert.ToInt32(会话[“auctionid]”);string products=Convert.ToString(会话[“产品标识]);用相关代码编辑您的问题(不在评论中)