【发布时间】:2014-08-27 20:56:21
【问题描述】:
在我的 ASP.NET MVC 5 应用程序中,我有一个表单,用户可以在其中输入价格。当然,这个值并不总是整数,所以我在我的模型中将它定义为 double。当用户输入一些值时,例如10000.00 并按提交,发送给控制器的模型始终具有 0.0 的物业价格值。任何想法为什么?
我的属性在模型中定义为:
[Required(ErrorMessageResourceType = typeof(Resources), ErrorMessageResourceName = "_errorEmpty")]
[Display(Name = "_carPrice", ResourceType = typeof(Resources))]
public Decimal Cijena { get; set; }
在我看来,我是这样使用它的:
<div class="form-group">
@Html.LabelFor(model => model.Cijena, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.TextBoxFor(model => model.Cijena, new { @class = "form-control", id = "cijena" })
@Html.ValidationMessageFor(model => model.Cijena)
</div>
</div>
还有我的控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult AddNewCar([Bind(Include = "Model, GodinaProizvodnje, GodinaKupnje, DrugiID, Cijena, RegOznaka, RegOd, RegDo, SelectedCityId")] AddCar car)
{
.
.
.
}
当模型从视图传递到控制器时,Price 的提交值始终为 0。我尝试将属性定义为 Decimal、Double、Float ... 始终为 0 http://prntscr.com/4hel3f
【问题讨论】:
-
该属性的数据类型是什么?
-
我定义为 Double
-
请发布您的模型、视图和控制器的代码
-
附带说明,您应该使用
decimal,而不是double -
抱歉延迟回复...我已经发布了我的代码...@Shoe 我也尝试使用十进制,但值仍然是 0:/
标签: controller double asp.net-mvc-5