我想为富客户端应用程序采用ASP.NET MVC模型绑定。我有以下控制器操作:
public ActionResult CreateUser(User profile)
以前使用HTML表单时,只要表单HTML输入名称与User
的属性名称匹配,模型绑定就会自动发生。
我理解模型绑定也在路由数据中查找,querystring
用于绑定到实体的值,但是当我放置与属性匹配的查询字符串值时,我得到404
。
我无法让这个ActionResult
继续工作。我是否需要配置一个参数匹配用户类属性的路由?
答案 0 :(得分:0)
您始终可以实现自定义模型绑定器(IModelBinder接口)。然后你可以像这样使用它:
public ActionResult CreateUser([ModelBinder(typeof(MyUserModelBinder))]User profile)
或在应用程序启动时将其注册为全局模型绑定程序:
ModelBinders.Binders[typeof(User)] = new MyUserModelBinder();
但也许首先你应该看看DefaultModelBinder是如何运作的 我想如果你输入的字段如“profile.Name”,“profile.Gender”,它应该可以正常工作。