我在ASP.NET核心控制器中得到一个日期,如下所示:
public class MyController:Controller{
public IActionResult Test(DateTime date) {
}
}
Run Code Online (Sandbox Code Playgroud)
该框架能够解析日期,但只能以英文格式.当我通过04.12.2017作为日期参数时,我的意思是2017年12月4日.这将被解析为英文日期,所以我的日期对象获得2017年4月12日的价值.我尝试仅使用这篇文章添加德语,并且这个,但没有成功.
ASP.NET Core需要做什么才能以正确的德语格式自动解析日期?
更新 I尝试设置RequestLocalizationOptions
services.Configure<RequestLocalizationOptions>(opts =>
{
var supportedCultures = new[]
{
new CultureInfo("de-DE"),
};
opts.DefaultRequestCulture = new RequestCulture("de-DE");
// Formatting numbers, dates, etc.
opts.SupportedCultures = supportedCultures;
// UI strings that we have localized.
opts.SupportedUICultures = supportedCultures;
});
Run Code Online (Sandbox Code Playgroud)
还是行不通.我打电话给example.com/Test?date=12.04.2017并在我的调试器中得到了这个:
public IActionResult Test(DateTime date) {
string dateString = date.ToString("d"); // 04.12.2016
string currentDateString = DateTime.Now.ToString("d"); // 14.01.2016
return Ok();
}
Run Code Online (Sandbox Code Playgroud) 我有一个DateTime类,并希望按照某种格式显示它...在这种情况下,我特别希望将其格式化为YYYYMMDD格式.
这样做的最佳C#/ .NET API功能是什么?
如何转换04/09/2013 8:09:10 PM to 09/04/2013(MM-dd-yyyy).我试图转换,但它将09作为日期,04作为月.
请帮忙
[HttpPost]
public string getdailynote(DateTime selectedDate)
//selectedDate gets date as 04/09/2013 8:09:10 PM
{
string x = selectedDate.ToString("MM-dd-yyy", CultureInfo.InvariantCulture);
string daily;
DateTime dt = Convert.ToDateTime(x);
//dt gets value as {09/04/2013 12:00:00 AM} but 09 as date and 04 as month
Dnote.RealDate =dt;
daily = _scheduler.GetDailyNote(Dnote);
return daily;
}
Run Code Online (Sandbox Code Playgroud)