【发布时间】:2014-11-01 01:05:07
【问题描述】:
我有一个有趣的问题,但我没有找到原因。 在 asp.net MVC 应用程序中,我有一个保存一些简单信息的表单。除了一个之外,所有字段都可以整齐地存储。此字段(字符串)返回验证错误“Int32 字段必须是数字”,但前提是文本中的句子包含单个数字。例如,如果句子如下: “一些包含数字 3 的简单句子”我会得到一个验证错误 - “Int32 字段必须是一个数字”,如果同一个句子转换为:
“一些包含数字 30 的简单句子”或“一些包含 30% 的简单句子” - 没有错误
来自模型的字段属性:
[Display(Name = "Some name")]
[StringLength(500, ErrorMessage = "You can enter up to 500 characters.")]
public string Akcija { get; set; }
在该字段旁边,我有一个(字符串)字段具有相同的属性特征,并且工作正常。
视图剪辑:
<div>
@Html.TextAreaFor(m => m.Akcija, new { style = "width:500px; height:100px;" })
@Html.ValidationMessageFor(m => m.Akcija)
</div>
不可能比这更简单,但问题就在这里。
你有什么建议吗?
编辑:
如果我继续尝试保存更改,无论验证错误如何,它都会保存到数据库中。在我看来,这是一个 JavaScript 验证错误或错误
编辑 2 - 生成的 HTML:
<textarea cols="20" data-val="true" data-val-number="The field Int32 must be a number." data-val-required="The Int32 field is required." id="Akcija" name="Akcija" rows="2" style="width:500px; height:100px;">
Web aplikacije i siteovi 3 sa 30% sniženja
我不知道它来自哪里-这个属性“data-val-number =”字段Int32必须是一个数字。 '" 和 " data-val-required = "Int32 字段是必需的。'" 我不在代码中强加这些规则
【问题讨论】:
-
你能发布生成的 HTML
-
您确定您使用的是正确的型号吗?
-
您能否再次检查页面是否绑定到正确的模型(其中 Akcija 是一个字符串)以及是否部署了与字符串 Akcija 关联的编译代码?
-
...非常确定:)。因为这个表格只有一个模型
-
使用此模型正确存储和恢复所有字符串
标签: asp.net-mvc