如何将包含多个对象的绑定XML反序列化并建模到此类对象的集合中?

时间:2011-07-20 17:46:39

标签: asp.net-mvc-3 model-binding xml-deserialization

目前我有一个自定义Model Binder和Model Binder Provider来检测“text / xml”,使用MvcContrib(here is the code/setup)对其进行反序列化,并将其绑定到我拥有的自定义模型,例如:

<User>
<name></name><role></role>
</User>

将绑定到new User() User.name, user.role(就像您期望的那样),当然Action就是这样开始的:

ActionResult CreateUser(User u) {

现在我想知道我是否可以反序列化看起来像这样的XML:

<Users> 
<User><name></name><role></role></User> 
<User>...</User>
<User>...</User> 
<Users>

并将其绑定到这样的Action:

ActionResult CreateUsers(List<User> u) {

1 个答案:

答案 0 :(得分:0)

尝试注册您的模型装订夹:

ModelBinders.Binders.Add(typeof(List<User>), new SimpleUserBinder());

注意:您不需要ModelBinderProvider,因为当您在Action中指定List<User>时,它会自动匹配该类型并调用SimpleUserBinder。