价格的C#ASP.NET输入字段为ValidationMessage提供该字段必须是数字

时间:2018-03-23 08:49:09

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

在我的应用程序中,我有一个表单,用户可以在其中创建新部件。

创建零件的表单包含ID,名称,描述等基本内容。但是我在使用Price字段时遇到了一些问题。

Price字段设置为小数:

[Table("pricelist")]
public class Pricelist
{
    [Key]
    [Required]
    public int Price_id { get; set; }

    public string CategoryId { get; set; }
    public string SubCategoryId { get; set; }
    public string AdminDescription { get; set; }
    public string AdminDescriptionShort { get; set; }
    public string Standard { get; set; }
    public string Unit { get; set; }
    public decimal? Quantity { get; set; }

    public decimal Price { get; set; }

但是当我输入类似50,12的值时,它会给我一个saise的ValidationMessage:"The field Price must be a number."

但它并没有给我一个错误。

以下是表单字段:

<div class="form-group">
    @Html.Label("Prijs", htmlAttributes: new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        @Html.EditorFor(model => model.Price, new { htmlAttributes = new { @class = "form-control" } })
        @Html.ValidationMessageFor(model => model.Price, "", new { @class = "text-danger" })
    </div>
</div>

我觉得奇怪的是它确实以另一种形式起作用。

其他形式:

<div class="form-group">
    @Html.Label("Prijs", htmlAttributes: new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        @Html.EditorFor(model => model.Price, new { htmlAttributes = new { @class = "form-control" } })
        @Html.ValidationMessageFor(model => model.Price, "", new { @class = "text-danger" })
    </div>
</div>

我之前尝试将它设置为浮点数,但是没有成功。 我不认为这次尝试修复它的错误很重要,因为我发现一种形式的错误,以另一种形式起作用。

0 个答案:

没有答案