Azure 托管站点上的日期时间格式

nol*_*ogo 2 c# csvhelper asp.net-core

所以我的技术栈是:asp.net core 1.1 托管在 Azure 上,使用 CSV Helper 将 CSV 读入 SQL 数据库(天蓝色)。

好的,所以我面临的问题是当我在本地使用 CSV 助手时一切正常,日期格式根据 CSV 文件将其读取为我想要的格式(dd/mm/yyyy 我在悉尼)。

当我导入托管在 azure 网站上的文件时..我的日期格式被搞砸了(它们正在转换为美国)。

我如何使用 CSV Helper 正确导入这些日期?

在我的 startup.cs 我有以下内容:

    //Currently only supports en-AU culture. This forces datetime and number formats to the en-AU culture regardless of local culture
    var auCulture = new CultureInfo("en-AU");
    var supportedCultures = new[] { auCulture };
    services.Configure<RequestLocalizationOptions>(options =>
    {
        options.DefaultRequestCulture = new RequestCulture(auCulture, auCulture);
        options.SupportedCultures = supportedCultures;
        options.SupportedUICultures = supportedCultures;
    });
Run Code Online (Sandbox Code Playgroud)

我在整个网站上使用 UTC,但由于这些日期时间来自 CSVHelper,这似乎搞砸了我的格式。

有任何想法吗?

干杯,

Jon*_*eet 5

如果你想确保CsvHelper总是使用一种特定的文化,你可以明确地设置它:

csv.Configuration.CultureInfo = auCulture;
Run Code Online (Sandbox Code Playgroud)

但是,您应该记住, aDateTime不会“存储”格式 - 因此,一旦您解析了 CSV 文件中的值,您就得到了一个DateTime值……您可能需要明确控制任何稍后为 UI 或其他输出格式化该值。