1

我有两个文本框(txtdateofissue 和 txtdateofexpiry)。第一个文本框附加有 CalendarExtender 控件。我希望如果用户为 txtdateofissue 文本框选择一个日期,然后自动相同的日期,但下一年应该输入 txtdateofexpiry 文本框。日期应采用 dd-MM-yyyy 格式,即 24-04-2013。我为此编写了代码,但出现错误(字符串不是有效的日期时间格式)

我的代码:

protected void txtdateofIssue_TextChanged(object sender, EventArgs e)
        {
            DateTime dt = Convert.ToDateTime(txtdateofIssue.Text);
            dt = dt.AddDays(-1).AddYears(1);
            txtdateofExpiry.Text = dt.ToShortDateString();
        }

我声明日期时间变量 dt 的第一行引发错误(字符串不是有效的日期时间格式)

当我在本地计算机上运行此代码时,它工作正常,但如果我在 iis 上运行它,则会显示错误...请更正我的代码或以新的方式指导我...提前致谢...

4

1 回答 1

3

你可以使用DateTime.TryParseExact方法

DateTime dt;
if (DateTime.TryParseExact(txtdateofIssue.Text, "dd-MM-yyyy",
                           CultureInfo.InvariantCulture,
                           DateTimeStyles.None,
                           out dt))
{
   dt = dt.AddDays(-1).AddYears(1);
   txtdateofExpiry.Text = dt.ToString("dd-MM-yyyy");
}

将日期时间转换回给定格式

查看文档以获取自定义日期和时间格式字符串以获取更多信息。

于 2013-04-24T04:53:15.883 回答