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

Sae*_*ati 4 c# dump object asp.net-mvc-3

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

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

return View(user);
return View(product);
return View(googleAnalyticsFeed);
Run Code Online (Sandbox Code Playgroud)

she*_*ert 17

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

@ObjectInfo.Print(Model)
Run Code Online (Sandbox Code Playgroud)


swa*_*eel -2

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

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

  • ViewBag 与在视图中显示类完全无关;这只是将模型传递给视图的一种方法。他做到这一点没有任何困难。他需要知道如何在视图中“显示”模型而不更改不同模型的视图。ViewBag 对此没有任何帮助。 (2认同)