ASP.NET MVC4教程/脚手架 - 验证和显示使用几种不同的语言环境

时间:2012-08-16 10:47:32

标签: c# asp.net asp.net-mvc-4 scaffolding

我正在使用VS 2012 RC并试图从这里开始遵循MVC4教程:

http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-model%27s-data-from-a-controller

我进入“输入有关电影的一些详细信息,然后单击”创建“按钮。然后得到一个错误:

"The value '9.99' is not valid for Price."

所以我认为它需要一个十进制逗号而是尝试使用9,99而不是以下结果:

"The field Price must be a number."

所以我不知道如何输入数字并满足验证检查。似乎有几个。所以我输入另一个数字9(没有任何小数或十进制字符)然后它可以工作。

然后我按“编辑”以查看我现在是否可以更改数字。价格现在显示为

9,00

带小数点后的逗号,日期为

01.11.1989 00:00:00

在简单地将日期和价格字段复制到剪贴板后,会立即显示以下错误:

The field ReleaseDate must be a date.

The field Price must be a number.

再次无法保存。

所以我猜,ASP.NET MVC脚手架自动要求使用文化不变量(小数点)和使用需要十进制逗号的my(德国)文化格式化数字。它进一步要求日期格式化为不变的文化,我猜这是美国的日期格式。

然后在显示时,它默认使用当前(德国)文化。

我很遗憾地使用具有德语区域设置的计算机。

我希望使用当前文化显示值,它已经使用了。 但我也希望验证器(其中似乎有几个)接受任何有效的格式,或者至少是当前文化中有效的格式。

对于真实应用程序(与教程相对),最佳解决方案是什么?

2 个答案:

答案 0 :(得分:2)

事实证明,本教程将在后面的教程中介绍如何解决这个问题。

答案 1 :(得分:0)

您很可能使用默认情况下从您的PC文化中假设的文化。如果您愿意,可以声明默认文化,即us-EN。

请参阅 http://everymanprogrammer.com/index.php/asp-net-easily-make-your-web-application-multilingual-part-2/