每次调用新页面时,我的代码都会通过 View 模型将几乎 1MB 的数据从我的 Controller 传递到 View 。我可以稍微优化一下,但我想知道这是否值得做,因为数据流都是内部的。
我在 Controller 中所做的典型工作是,我从 Azure 数据存储中获取所有测试结果,然后将它们放入一个类的新实例中。然后我将这个类和其他类传递给一个 View 。我想我不确定。数据是通过引用传递还是将实际数据从一个地方移动到另一个地方?
任何人都对 MVC3 的性能调优有任何经验吗?
这是一个虚构的例子。在这个例子中,将“TestData”类和内容传递给 View 非常好,而且很容易,但是我只需要这个类中的几个项目。所以我想知道我是否应该在 Controller 中添加逻辑并在 View 模型中为这些项目添加字段,或者只是不打扰并移动所有类数据,包括我不需要的数据。
public class testIndexViewModel
{
public string Url { get; set; }
public PageMeta PageMeta { get; set; }
public TestData TestData { get; set; }
}
谢谢,
最佳答案
我会从用户的角度来看这个。
有多少数据会随时显示在屏幕上?
如果数据过多,则数据可能会变得毫无意义,因为用户将遭受信息过载。
我会尝试使用某种描述的过滤系统,也许是下拉列表供用户指定为特定的过滤器集。这样,您就可以在 Controller 中过滤数据,从而只返回 1MB 数据集的一小部分。
或者,如果您想返回所有数据,我会建议使用更多 ajax 样式,其中仅返回一小部分,并且随着用户滚动,通过 ajax 加载更多数据 - 类似于 Google 图片的工作方式。
关于asp.net-mvc - 可以从 Controller 传递大量数据以在 MVC3 中使用 viewmodel 进行查看吗?这里',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6138997/