C# 使用linq查询的日期格式问题(介于之间)

C# 使用linq查询的日期格式问题(介于之间),c#,asp.net,linq,linq-to-sql,datetime-format,C#,Asp.net,Linq,Linq To Sql,Datetime Format,我在linq中使用中间查询。场景是,我选择开始日期和结束日期,并希望检索这些日期之间的数据。在本地系统上工作正常,但当我将其部署到服务器上时,它引发了异常 字符串未被识别为有效的日期时间 需要以文本框格式输入的数据:04/01/2015 以数据库格式存储的数据:2013-10-23 12:35:56.593 protected void _btnSearch_Click(object sender, EventArgs e) { using (DataClassesCAB

我在linq中使用中间查询。场景是,我选择开始日期和结束日期,并希望检索这些日期之间的数据。在本地系统上工作正常,但当我将其部署到服务器上时,它引发了异常

字符串未被识别为有效的日期时间

需要以文本框格式输入的数据:04/01/2015

以数据库格式存储的数据:2013-10-23 12:35:56.593

protected void _btnSearch_Click(object sender, EventArgs e)
    {
        using (DataClassesCABEEDataContext db = new DataClassesCABEEDataContext())
        {
            var query = (from a in db.Jobs where 
                         (a.Job_DateTime >= Convert.ToDateTime(_txtFrom.Text)
                         && a.Job_DateTime <= Convert.ToDateTime(_txtTo.Text)) //using add watch here
                         select new
                         {
                             Reference = a.Job_No,
                             Booking_Time = a.Job_DateTime.Value.ToString("HH:mm", CultureInfo.CurrentCulture),                                 
                             Cust_Name = a.CustName,                                 
                             Price = a.Price,                             
                         });

            GridView1.DataSource = query;
            GridView1.DataBind();
        }  
    }
protectedvoid\u btn搜索\u单击(对象发送方,事件参数e)
{
使用(DataClassesCABEEDataContext db=newdataclassescabeedataContext())
{
var query=(来自数据库中的作业,其中
(a.Job\u DateTime>=Convert.ToDateTime(\u txtFrom.Text)

&&a.Job_DateTime若你们知道日期的格式,你们应该使用DateTime.ParseExact

(a.Job\u DateTime>=DateTime.ParseExact(\u txtFrom.Text,“dd/MM/yyyy”,CultureInfo.InvariantCulture)

&&a.Job\u DateTime您的
CurrentCulture
是什么?您确定您的
DateTime
值是用正确的数据库类型存储的吗?希望您不要将它们存储为字符。“en-US”是CurrentCultureArea,您确定吗?
转换为.ToDateTime(“04/01/2015”,CultureInfo.GetCultureInfo(“en-US”))
解析很好。@SonerGönül…数据以datetime格式存储在数据库中…在“GridView1.DataSource=query”之前;使用IMedate窗口查看linq生成的查询。使用“query.ToString()”错误:“ParseExact”方法没有重载需要2个参数。抱歉,我忘记了区域性。我猜您的日期格式是“dd/MM/yyyy”,而不是“MM/dd/yyyy”。
 (a.Job_DateTime >= DateTime.ParseExact(_txtFrom.Text, "dd/MM/yyyy",  CultureInfo.InvariantCulture)
                && a.Job_DateTime <=  DateTime.ParseExact(_txtTo.Text, "dd/MM/yyyy",CultureInfo.InvariantCulture)))