我需要绑定一个“Field”类型的实体,该实体将List作为属性。该列表将具有混合类型的行为,但所有行为都继承自行为。我需要列表与正确的派生类型绑定,以便它们可以正确保存。
我正在使用MvcContrib库中DerivedTypesModelBinder中使用的技术,我在每个实体上都有一个属性,它包含需要创建的类型。该字段称为“XxModelTypexX”。
我的问题是,我不确定如何更改自定义模型绑定器中的属性类型。每次我尝试它只是绑定一个通用的行为列表。
任何帮助都将不胜感激。
答案 0 :(得分:0)
好的,所以我明白了。基本上即使行为列表是Field上的属性,您仍然必须将其添加到Global.asax文件中使用自定义模型绑定器的类型列表
System.Web.Mvc.ModelBinders.Binders.Add(typeof(Types.Behaviour), new ConcreteTypeModelBinder());
有了这条线,我就改变了代码类型。