簡體   English   中英

在asp.net中,不能將字符串識別為有效的DateTime,托管在godaddy上

[英]String was not recognized as a valid DateTime in asp.net, hosted on godaddy


我有一個需要從出生日期獲得年份的應用程序,我正在使用下拉列表填充日,月和年。 我已經在year dropdownlist selectindexchange事件上進行了編碼,以在這里計算我的代碼年,當我在開發機器上執行該代碼時,它可以完美運行,但是當我將其托管在godaddy上時,它會給我錯誤:

無法將字符串識別為有效的DateTime。

我已經嘗試了一些步驟來放入我有評論的cultureinfo,但即使這些都不起作用

    protected void DDLyear_SelectedIndexChanged(object sender, EventArgs e)
    {

        var date = DDLDay.Text + "/" + DDLMonth.Text + "/" + DDLYear.Text;
        DOB.Text = date;
        if (DDLDay.Text == "DD" || DDLMonth.Text == "MM" || DDLYear.Text == "YYYY")
        {
            ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('Invalid Date')</script>");
            DDLYear.Text = "YYYY";
            return;

        }

        if (Convert.ToDateTime(date) > System.DateTime.Now)
        {
            ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('DOB cannot be greater then current date')</script>");
            //DOB.Text = System.DateTime.Now.ToString("dd/MM/yyyy");
            return;
        }
      //  DateTime now = System.DateTime.Now;
        //DateTime now = DateTime.Parse(System.DateTime.Now.ToString("yyyyMMdd"), System.Globalization.CultureInfo.GetCultureInfo("hi-IN").DateTimeFormat);
        //DateTime birthDate = Convert.ToDateTime(DOB.Text, System.Globalization.CultureInfo.GetCultureInfo("hi-IN").DateTimeFormat);
      DateTime now = DateTime.ParseExact(System.DateTime.Now.ToString(), "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
        string birthDate = Convert.ToDateTime(DOB.Text).ToString("dd/MM/yyyy");
        TimeSpan difference = Convert.ToDateTime(now) - Convert.ToDateTime(birthDate);

        //DateTime birthDate = Convert.ToDateTime(DOB.Text);
        //TimeSpan difference = Convert.ToDateTime(now) - Convert.ToDateTime(birthDate);
        int days = (int)difference.TotalDays;
        int year = days / 365;
        ////int remain = days % 365;
        ////int month = remain / 30;
        ////int day = remain % 30;

        txtage.Text = year + " " + "Years".ToString();

    }

堆棧跟蹤

[FormatException: String was not recognized as a valid DateTime.]
System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi,  DateTimeStyles styles) +10973474
 System.Convert.ToDateTime(String value) +83     FAHIS_Data_Entry_Software_in_WEB.NewEnrolee5.DDLyear_SelectedIndexChanged(Object sender, EventArgs e) +397
 System.EventHandler.Invoke(Object sender, EventArgs e) +0
 System.Web.UI.WebControls.ListControl.OnSelectedIndexChanged(EventArgs e) +116
 System.Web.UI.WebControls.DropDownList.RaisePostDataChangedEvent() +133
 System.Web.UI.WebControls.DropDownList.System.Web.UI.IPostBackDataHandler.RaisePostDataChangedEvent() +13
 System.Web.UI.Page.RaiseChangedEvents() +132
 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1644

用戶文化信息

 cInfo = new CultureInfo("es-AR");
        DateTime DOB= Convert.ToDateTime(DOB.Text, cInfo.DateTimeFormat);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM