转储ASP.NET MVC视图中的对象 - 对象转储视图

时间:2011-11-06 03:25:08

标签: c# asp.net-mvc-3 object dump

我有一个ASP.NET MVC视图,它仅用于测试和诊断目的。有一段时间我将一个完全不同的对象(模型)传递给它,并渲染其属性以查看对象的状态。但是,这需要为每个对象修改视图。

如何创建对象转储视图?通过对象转储器视图,我指的是在更改其相关模型时不需要以任何方式更改的视图。例如,在传递user对象或product对象或其他任何内容时,视图保持不变,同时仍能正常运行。

return View(user);
return View(product);
return View(googleAnalyticsFeed);

3 个答案:

答案 0 :(得分:17)

使用 ObjectInfo 帮助程序显示传递给它的每个对象的类型和值。您可以使用它来查看代码中变量和对象的值,还可以查看有关该对象的数据类型信息。

@ObjectInfo.Print(Model)

答案 1 :(得分:3)

使用DisplayForModel()输出通用视图或使用已知对象的显示模板,如下所示: ASP.NET MVC 3: Output specific view for concrete implementation

这样,您可以根据需要自定义输出。

答案 2 :(得分:-2)

由于这是您的测试,View将建议使用使用C#4.0动态功能的ViewBag。 返回视图之前();将模态保存到Viewbag中并使用viewbag在View上呈现数据。

修改 Assuming View is just a Index view then we can easily run for each loop loop by casting ViewBag as IQuerable