所以我的技术堆栈是: 使用CSV Helper在Azure上托管的asp.net核心1.1将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;
});
我正在整个网站上使用UTC,但由于这些日期时间来自CSVHelper,这似乎搞砸了我的格式。
任何想法?
欢呼声,
答案 0 :(得分:3)
如果您想确保CsvHelper
始终使用某种特定文化,您可以明确地设置它:
csv.Configuration.CultureInfo = auCulture;
但是,您应该记住DateTime
没有“存储”格式 - 所以一旦您解析了CSV文件中的值,您就得到了{{1} } value ...您可能需要显式控制UI或其他输出的该值的任何后续格式。