我想从不同于我当前的类型MvcHtmlString
的方法中获得结果。下面的代码编译但总是返回一个空字符串。HtmlHelper.Display
HtmlHelper
public static MvcHtmlString GetPropertyValue(this HtmlHelper html, string property, object value)
{
var dictionary = new ViewDataDictionary();
dictionary.Add(property, value);
var fooHelper = new HtmlHelper<FooModel>(
new ViewContext(
html.ViewContext,
new WebFormView(html.ViewContext, "dummy"),
dictionary,
new TempDataDictionary(),
TextWriter.Null),
new ViewPage());
return fooHelper.Display(property);
}
所有的辅助对象(ViewContexts
、ControllerContexts
、ViewDataDictionaries
等)对我来说都是一个黑盒子;我确定我遗漏了一些明显的东西。
我怎样才能让它工作?
对于好奇:这将在我的应用程序的审核页面上使用。我有string
数据库中的属性名称(作为 a )、旧值和新值。我也知道用于显示由记录表示的模型的实际实例的类型。我想重用模型类中的所有数据注释来显示 HTML。