c#和日期文化问题

Ton*_*lon 4 .net c# asp.net datetime cultureinfo

我写了一个asp.net应用程序,我的一个回发例程只是将用户提交的表单数据保存到sql 2005 db.所有在我的开发机器上运行都很棒,但是当我部署到实时站点时,我的解析日期检查器的日期无效.

基本上它是期待在现场机器上的美国日期格式,但这不是我想要的.用户需要能够以dd/MM/yyyy格式输入.因此像21/10/2009这样的有效日期会在实时服务器上返回错误,但在我的开发机器上则不会.下面是抛出异常的代码.

DateTime dt;
dt = DateTime.Parse(sdate);  
//sdate in GB dd/MM/yyyy format
Run Code Online (Sandbox Code Playgroud)

是否可以强制解析例程以dd/MM/yyyy格式预期日期?

sin*_*e j 9

这样做:

    System.Globalization.CultureInfo cultureinfo = 
        new System.Globalization.CultureInfo("en-gb");
    DateTime dt = DateTime.Parse("13/12/2009", cultureinfo);
Run Code Online (Sandbox Code Playgroud)


Mat*_*ton 6

您可以使用DateTime.ParseExact指定预期的格式.