Asp.net mvc 如果ModelState表示字段无效,则清除字段值
如果Asp.net mvc 如果ModelState表示字段无效,则清除字段值,asp.net-mvc,model-view-controller,modelstate,Asp.net Mvc,Model View Controller,Modelstate,如果ModelState显示某个字段无效,我想清除该字段在模型中提交的值 到目前为止,我已经做到了这一点,但无法在模型中确定价值的关键。有什么建议吗 if (!ModelState.IsValid) { foreach (string key in ModelState.Keys) { if (!ModelState.IsValidField(key)) { // This field is not valid so set to empty string
ModelState
显示某个字段无效,我想清除该字段在模型中提交的值
到目前为止,我已经做到了这一点,但无法在模型中确定价值的关键。有什么建议吗
if (!ModelState.IsValid)
{
foreach (string key in ModelState.Keys)
{
if (!ModelState.IsValidField(key))
{
// This field is not valid so set to empty string in model
// Something like....
model[key] = "";
}
}
}
您应该返回与接收到的模型相同的视图,并将代码更改为以下内容:
if (!this.ModelState.IsValidField(key))
{
var emptyValue = new ValueProviderResult(
string.Empty,
string.Empty,
CultureInfo.CurrentCulture);
this.ModelState.SetModelValue(
key,
emptyValue);
}
我知道这是个老问题。但作为这个问题的扩展-->如果我不希望我的模型包含无效值,我们如何访问具有更新值的模型。