在Asp Net MVC中持续提交表单失败的显示数据

时间:2019-06-28 00:34:08

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

鉴于我有以下简单情况,当服务器上的表单发布验证失败时,如何保存显示数据,即InfoAboutInput?
如果模型验证失败,我是否必须依靠基于会话的缓存在服务器端重新填充我的模型?还是可以采用其他技巧?

简单的ViewModel:

public class FormViewModel : IValidatableObject
{
    public string InfoAboutInput { get; set; } // customised display info per user    
    public string UserInput { get; set; }

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
    {
         // perform some specialised validation on UserInput
    }
}

简单的消费视图:

@model FormViewModel
<div>
    <form>
        <h3>@Model.InfoAboutInput</h3>
        <input asp-for="UserInput"/>
        <button>Submit</button>
    <form>
</div>

1 个答案:

答案 0 :(得分:0)

捕获该帖子的控制器操作将有权访问任何表单字段及其值。在此操作中,只需创建一个新模型,从数据库或其他任何模型中填充它,然后使用表单值填充任何回发的值。然后返回该模型,作为控制器操作的结果。