2011-05-05 127 views
0

这是我的场景。我有550个对象的清单(每个对象代表一个采购订单),我需要在屏幕上显示。用户控制vs Raw中的ASP.NET MVC HTML(无用户控制)?

我将我的采购订单列表返回给查看并对它们进行循环,调用用户控件并将呈现HTML div的对象与采购订单的内容进行传递。这很好,工作正常。

但是我注意到的是,如果删除用户控件,并打印出相同的确切HTML(只在循环内而不是在UC内部),我看到显着慢的速度来完全呈现页面。

ASP.NET是否以不同的方式呈现HTML内部的HTML,而只是在循环中使用原始HTML?这甚至有意义吗?

+0

也许你想发布你愿意比较的两种方法的代码示例?否则,这里是我的答案:当使用正常循环而不是视图控件时,ASP.NET MVC没有做任何特别的事情(由MVC决定不应该使用这种控件),除非这两件事情你所观察到的结果是绝对不可能的你比较实际上不是一回事。 – 2011-05-06 06:12:06

回答

0

您是否尝试使用StringBuilder或字符串来保存HTML并循环?结果有什么不同? 希望有一些缓存/实习内部进行。

+0

没有人真的不想走上字符串生成器的路线,因为这不是真正可以维护的,它的许多HTML组成了div。 – aherrick 2011-05-05 17:35:47

+0

StringBuilder是最推荐的eventhout它是复杂的。字符串是不可变的类型,每次执行字符串操作时它都会在内存中创建新的字符串对象。这可能是性能下降的原因之一。检查内存使用情况,你会知道。我相信如果你把它切换到StringBuilder,它会提高性能。 – Priyank 2011-05-05 18:58:29

+1

谢谢,但不幸的是,这仍然不能真正回答我的问题。 – aherrick 2011-05-05 20:46:38