Windows 10中的短date格式在ASP.NET应用程序中不一致

我有一个新的Windows 10安装,我正在迁移一个现有的ASP.NET应用程序从一个Windows 7的框中运行正常的框。

我已经注意到,在Windows 10中,即使我已经特别将date设置为M / d / yyyy(注意4位数年),date也会以M / d / yy格式显示。 date在浏览器中正确显示,但是当我连接到本地IIS时,仍然使用前面的短date格式呈现date,这在parsing时会出现一系列的validation问题。

任何人有任何想法? 更改我的区域设置后,我重新启动。 我也尝试将IIS进程标识更改为networking服务而不是APPPOOL,因为有人提到可能会有所作为。 它没。

为什么IIS不尊重我的区域设置?

我们发现这个问题是由AppPool使用的用户从默认用户继承的,在Windows 10上开始的日期格式为M / d / yy。 这需要先被更改并设置为新用户的默认值,然后您需要创建一个名称与现有(或删除)身份不同的新AppPool身份。 啊。 但是这个工作。

基本步骤:

  1. 控制面板 – >时钟,语言和地区 – >更改日期,时间或数字格式
  2. 设置所需的短日期格式(对我来说这是M / D / YYYY)
  3. 点击应用
  4. 转到管理选项卡,然后单击复制设置
  5. 选中这两个框,然后单击确定
  6. 重新启动好的措施,但我不记得这是否是必需的
  7. 在IIS中创建一个新的AppPool标识并将其分配给您的站点

ASP.NET应用程序现在应该使用预期的日期格式。 值得重申的是,AppPool标识必须具有不同的名称。 即使删除一个身份,重新启动,并创建一个具有相同的名称不能解决这个问题。 但创建一个新的,独特的名字呢。