简体   繁体   English

ASP.NET 内核 razor 十进制值无效

[英]ASP.NET Core razor decimal in form value not valid

In my model:在我的 model 中:

[Range(1, 100)]
[DataType(DataType.Currency)]
[Column(TypeName = "decimal(18, 2)")]
public decimal MyDecimal { get; set; }

In my cshtml file:在我的 cshtml 文件中:

<input asp-for="MyModel.MyDecimal" class="form-control" step="0.01" type="number" value="0.00" />

It's not working: The value is not a number.它不起作用:该值不是数字。

In my model:在我的 model 中:

public decimal MyDecimal { get; set; }
[Range(1, 100)]
[DataType(DataType.Currency)]
[Column(TypeName = "decimal(18, 2)")]
public string MyDecimal_string { get; set; }

In my.cshtml file:在 my.cshtml 文件中:

<input asp-for="MyDecimal_string" step="0.01" type="number" class="form-control" />

In my.CS file, I convert MyDecimal_string to decimal:在 my.CS 文件中,我将 MyDecimal_string 转换为十进制:

Mydecimal = decimal.Parse(MyDecimal_string, CultureInfo.InvariantCulture);

I am using .NET 5我正在使用 .NET 5

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM