.net核心Web Api 2.1中的“ GET”请求日期格式问题

时间:2019-01-18 10:36:42

标签: c# asp.net-core-webapi asp.net-core-2.1

我有.net core 2.1 Web Api项目。而且我正在发送GET请求,如下所示。我要邮递员发送“ 10.12.2019”。但是我从控制器那里得到的名称是“ 12.10.2019”。 POST请求中存在此问题。我通过在Startup.cs中添加以下代码来解决问题。但是,在GET请求中继续出现问题。如何解决GET的请求?

MyController.cs

[HttpGet]
public void MyGetMethod(DateTime myDate)
{ }

我的网址

http://localhost:5012/api/MyController/MyGetMethod?myDate=10.12.2019

我的Startup.cs

   services.AddMvc().AddJsonOptions(options =>
   {
       options.SerializerSettings.Culture = new CultureInfo("tr-TR");
   });

///////////////////////////////
   var defaultCulture = new CultureInfo("tr-TR");
   app.UseRequestLocalization(new RequestLocalizationOptions
   {
       DefaultRequestCulture = new RequestCulture(defaultCulture),
       SupportedCultures = new List<CultureInfo> { defaultCulture },
       SupportedUICultures = new List<CultureInfo> { defaultCulture }
   });

1 个答案:

答案 0 :(得分:0)

好的,我可以看到解决这个问题的一种方法。您将其传递到主体中(作为数据)并传递格式。例如

  

new Date()。toUTCString()

,在服务器上您可以像

一样接收它
public void MyGetMethod([FromBody] DateTime myDate)