我有一个搜索表单,我想使用短查询字符串参数(例如?q =值& s =任何& c = blah),我想使用MVC模型绑定来获取这些参数到我的控制器行动。如何将表单域绑定到具有不同名称的模型属性?
我可以创建一个反映这些短名称的类型,但我宁愿有一个类型具有更明智的名称(例如q = Query,s = SortOrder,c = Cheese)。有没有一个简单的方法可以做到这一点,比如我的模型的属性?
我知道我可以为此编写一个新的模型绑定器,但这感觉像是矫枉过正 - 我没有做任何复杂的事情,只是使用了不同的名称) - 并且必须突然显得非常明确。由于模型绑定基础设施使用TypeDescriptors,我想我可以在我的模型上指定一个自定义类型描述符,该描述符返回具有不同名称的属性,大概是从模型本身的属性 - 至少这是可用的。
无论如何,我希望有人已经这样做了?
我已经做到了。自定义绑定。 – 2010-02-23 08:37:43