我有一个asp验证问题。 我有一个十进制字段,我希望介于0.00和1.00之间。
这是我的模型:
public class Intent
{
public Guid Id { get; set; }
public Language Language_ { get; set; }
public Boolean Active { get; set; }
[Range(0.00, 1.00)]
public decimal Tolerance { get; set; }
public LuisApp LuisAppFr_ { get; set; }
public LuisApp LuisAppEn_ { get; set; }
public LuisApp LuisAppNl_ { get; set; }
public string UrlImage { get; set; }
}
以下是帖子方法的签名:
public async Task<IActionResult> Create([Bind("Id,Active,Tolerance,UrlImage,Language_,Language_.TextEn,Language_.TextFr,Language_.TextNl")] Intent intent)
以下是创建视图的一部分:
<form asp-action="Create">
<div asp-validation-summary="All" class="text-danger"></div>
<div class="form-group">
<div class="checkbox">
<label>
<input asp-for="Active" /> @Html.DisplayNameFor(model => model.Active)
</label>
</div>
</div>
<div class="form-group">
<label asp-for="Tolerance" class="control-label"></label>
<input asp-for="@Model.Tolerance" class="form-control"/>
<span asp-validation-for="Tolerance" class="text-danger"></span>
</div>
...
<div class="form-group">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</form>
Here is an image showing the value of my Tolerance field when it gets to the controller
And here is an image of my network request
绑定似乎在前端好,但不在后端。 有谁知道我的错误是什么?
感谢您的回答。 对不起,如果是重新发布。
答案 0 :(得分:0)
我在startup.cs中添加了这个问题解决了我的问题:
app.UseRequestLocalization(new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture("en-US")
});