我有一种情况,我希望显示一个未附加到模型的对象,但我想为其指定元数据,以便模板系统将其显示为,就好像它是具有指定元数据的模型属性。类似的东西:
@Html.DisplayObject(obj, metadata) <--pseudocode
也就是说,我有一个自由对象obj
,我知道我希望它如何显示(通常的元数据,如DisplayName,FormatString,UIHint等),但是这个对象没有附加到模型。
在这种情况下,如何挂钩MVC的默认模板逻辑?
(顺便说一下,对象没有附加到模型的原因是它在运行时动态加载,所以没有编译时间来添加属性并用元数据属性来装饰它。所以我可能真的询问处理这种情况的正确方法。)
答案 0 :(得分:0)
此处一个可能的选择是实现自定义元数据提供程序。我自己从未这样做,但article on the topic看起来很有用而且很详细。
答案 1 :(得分:0)
无论如何都不是一个出色的答案,但最后我只是手动实现了我需要的UI,将其考虑在有用的局部视图和辅助方法中,并且它真的不那么难。我也有完全控制,这很好。