C# 尝试使用dateformat作为dmy解析日期

C# 尝试使用dateformat作为dmy解析日期,c#,C#,如何使以下日期成为有效日期 class Program { static void Main(string[] args) { DateTime testResult; DateTime.TryParse("31/1/2012", out testResult); } } 使用此重载: 传递指定DMY日期顺序的区域性 例如: DateTime.TryParse("31/1/2012", new CultureInfo("en-GB"

如何使以下日期成为有效日期

class Program
{
    static void Main(string[] args)
    {

        DateTime testResult;
        DateTime.TryParse("31/1/2012", out testResult);

    }
}
使用此重载:

传递指定DMY日期顺序的区域性

例如:

DateTime.TryParse("31/1/2012", new CultureInfo("en-GB"), DateTimeStyles.None, out testResult);
有些人会建议使用TryParseExact,但这也要求您指定区域性:

DateTime.TryParseExact("31/1/2012", "d/M/yyyy", CultureInfo.InvariantCulture, DatetimeStyles.None, out testResult); 

我明白了,这是英国的约会所以

DateTime testResult;
DateTime.TryParse("31/1/2012", 
    CultureInfo.CreateSpecificCulture("en-GB"), DateTimeStyles.None, out testResult);

你的意思是,这是一个有效的日期,并且你的代码可以工作。如果区域性当前未设置为GBen,则不会。如果此操作有效,则它没有OP所需的相同功能。看起来他们想要一个TryParse变体,我假设他们会接受糟糕的格式。因此,我不能投你一票。很抱歉,这只适用于小于10的日值有前导0的情况,这似乎不太可能,因为月份值没有前导0。
DateTime testResult;
DateTime.TryParse("31/1/2012", 
    CultureInfo.CreateSpecificCulture("en-GB"), DateTimeStyles.None, out testResult);