C# MVC.NET正在将用户信息读入表单,但服务器端授权失败

C# MVC.NET正在将用户信息读入表单,但服务器端授权失败,c#,asp.net,asp.net-mvc,forms,C#,Asp.net,Asp.net Mvc,Forms,我有一个表单,用户可以在其中输入最终将用于创建新客户、信用卡和会员对象的数据。我想把recaptcha添加到页面中。这将在服务器端进行验证。所有其他验证都将使用javascript在客户端完成,在服务器端可能还有一层额外的验证 如果验证码失败,我想将用户重定向回表单并自动重新输入他们的信息,并执行一些漂亮的jquery来突出显示无效字段 我正在寻找做这件事的最佳实践。我应该创建某种具有Customer obj属性、Credit Card obj属性和Membership obj属性的显示对象,还

我有一个表单,用户可以在其中输入最终将用于创建新客户、信用卡和会员对象的数据。我想把recaptcha添加到页面中。这将在服务器端进行验证。所有其他验证都将使用javascript在客户端完成,在服务器端可能还有一层额外的验证

如果验证码失败,我想将用户重定向回表单并自动重新输入他们的信息,并执行一些漂亮的jquery来突出显示无效字段

我正在寻找做这件事的最佳实践。我应该创建某种具有Customer obj属性、Credit Card obj属性和Membership obj属性的显示对象,还是应该将MVC FormCollection对象传递回页面并使用它填充表单

虽然自定义显示对象需要更多的工作,但我计划使用ViewData存储对验证失败的字段的引用。因此,自定义显示对象不需要我使用ViewData字典,我希望避免使用它


您认为我应该做什么,将最佳实践作为一个因素进行权衡?

我认为使用强类型对象比只使用FormCollection更好。 我建议您创建一个ViewNodel对象,该对象将在视图中包含您需要的所有属性,并使用强类型视图


如上所述,包装(并根据需要有条件地公开或增加)页面上正在处理的对象的ViewModel非常适合显示,只是在回发内容时要有更多的选择性

就错误处理而言