use*_*833 4 model-view-controller asp.net-mvc 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 in model
// Something like....
model[key] = "";
}
}
}
Run Code Online (Sandbox Code Playgroud)
Joã*_*elo 11
您应该使用收到的模型返回相同的视图,并将代码更改为以下内容:
if (!this.ModelState.IsValidField(key))
{
var emptyValue = new ValueProviderResult(
string.Empty,
string.Empty,
CultureInfo.CurrentCulture);
this.ModelState.SetModelValue(
key,
emptyValue);
}
Run Code Online (Sandbox Code Playgroud)