ParseExact:String未被识别为特定区域性的有效DateTime

时间:2018-02-19 13:10:25

标签: mono culture

这个非常简单的表达式在.NET 4.71和.NetCore 2.0上正确计算

DateTime.ParseExact( 
    "9-Фев-18 15:45", "d-MMM-yy HH:mm", 
    CultureInfo.GetCultureInfo( "ru-RU" ) )

但是在Mono 5.8(Windows和Linux)上都会导致错误:

System.FormatException : String was not recognized as a valid DateTime

有任何修复或解决方法的想法吗?

1 个答案:

答案 0 :(得分:0)

我已经能够重现这个错误。

我只能想到三个选择:

  1. 不要使用该日期(仅使用dates in ISO format
  2. 如果你不能避免这些日期(我猜不是),那么自己解析它们。无论如何,我会在Xamarin Bugzilla中提交一个错误。
  3. 使用.NET Core代替Mono。我可以使用pacman -S dotnet-sdk dotnet-runtime在Manjaro中安装它。不幸的是,我已经检查了它,它也不起作用(也许他们正在使用Mono的实现?)。
  4. 我猜你自己只能解析它们。

    希望这(以某种方式)有所帮助。