我对 MVC 相当陌生,我正在寻找有关如何设置特定注册控制器的建议。
我有一个名为 AccountController 的控制器,它有一个 Register 方法,我有一个 Register.cshtml。
现在,我似乎遇到的最大问题之一是我需要根据服务的响应填充 2 个下拉列表,因为这些值会根据位置和其他各种参数而变化。
我的页面已启动并加载,但我不确定用户单击“注册”后该怎么做。
@model Adw.Models.RegisterModel //This is my model
@Html.DropDownListFor(m => m.States, new SelectList(Model.States)); // I load my dropdowns here
[AllowAnonymous]
public ActionResult Register(RegisterModel model)
{
model.States = Services.GetStates().Payload;
model.Countries = Services.GetCountries().Payload;
return View(model);
}
所以我的问题是,当用户提交表单时,它应该回到同样的方法吗?如果是这样,验证这是提交而不是初始加载的最佳方法是什么?
此外,我在错误处理方面没有做太多工作,并且可以对此提出建议,例如,如果上述任何一个服务调用失败,则无法完成注册,应该直接到新页面还是有将这种错误构建到同一页面中的简单方法?