【发布时间】:2017-10-07 21:47:47
【问题描述】:
这是我第一次参加这个非常有趣的论坛。 我正在做一个 mvc 项目。我有我的模型,里面有一个货币的小数属性。我也有它的编辑视图,我在其中使用 Html Helper TextEditorFor。此 Html Helper 在网页上显示来自 de Database 的一个值,但它显示为带逗号的小数。然后,当我想再次发送此编辑而不进行任何编辑时,它不会向数据库发送任何内容并显示错误的 TextEditBox,我需要在其中更改逗号以便能够将此数据发送到数据库。我希望我能正确解释它:P
这是我的模型:
[Display(Name = "Hardware purchasing")]
[DataType(DataType.Currency)]
public decimal Hardware { get; set; }
这就是风景
<div class="form-group ">
@Html.LabelFor(model => model.Hardware, htmlAttributes: new { @class = "control-label col-md-2 col-xs-6" })
<div class="col-md-1 col-xs-3 ">
@Html.EditorFor(model => model.Hardware, new { htmlAttributes = new { @class = "form-control text-center" } })
@*@Html.ValidationMessageFor(model => model.Hardware, "", new { @class = "text-danger" })*@
</div>
我一直在寻找一些方法,让我将这个带有逗号的数字转换为十进制,以便发送到数据库。也许在控制器中获取 html 值并对其进行转换,但我不知道这是否是正确的方法。 我希望你能帮助我。非常感谢。
【问题讨论】:
-
如果你使用十进制数据类型,你应该从十进制值中去掉逗号。
-
向我们展示一些演示数据以了解正在发生的事情....数据库中有什么以及您在 HTML 中得到了什么...只有描述将无济于事..
-
提供控制器动作方法代码,你是使用默认模型绑定器还是使用请求参数?
-
感谢您的回答。我仍然对代码以及在哪里引入它有一些疑问。我添加了一个新答案,其中包含有关我的项目的更多信息。
标签: c# asp.net-mvc decimal