动态控制创建vs静态控制性能



我有几页是Q&A,基本上只是供参考,他们不能添加问题或答案。在单击问题之前,答案将不会显示,并且Q&A的格式为问题将被加粗,下划线等。

这些问题不会有太大的变化,但是对于不同的客户,他们会有不同的问题。

之前的开发人员使用服务器端来显示和隐藏所有的问题,并且在页面上是静态的。

考虑将来当我为另一个客户创建一个新的问题页面时,我需要为每个问题写适当的样式(为问题下划线,加粗,换行,指定id,逐行)。

我想知道这是不是一个好主意,把所有的Q& a到一个文本文件,然后使用解析器解析文本文件,并动态创建所有的Q& a ?因此,如果我需要更改每个Q&A的显示格式,我可以修改我创建控件的方式。在这种情况下,将所有控件设置为客户端要容易得多。

但另一件事是,这个页面将被许多用户同时使用。所以我想知道动态控件的创建是否会对页面性能产生很大的影响?把它变成动态的值得吗?

性能不是问题,除非(1)它被定义,(2)它是可测量的。

用于动态文件和静态文件。这取决于你想要的解有多简单或多复杂。如果只是Q&A和格式,那么html &CSS比动态服务器端解决方案更有意义。

动态构建控件听起来是个不错的主意,不应该导致性能方面的问题。从文本文件中读取问题的数据则不然。这种方法有很多问题(并发性;锁定,IO)的性能。您应该使用数据库技术来存储和检索数据。

如果您使用用户控件来构建问题,您可以通过在用户控件上使用输出缓存来缓解任何可能的性能问题。这样,如果不需要,就不必一遍又一遍地重新生成问题集。

动态占位符还可以方便地在多个回发中添加/保持控件/控件状态。

如果这个选项会让你的生活更容易,看看这个动态控制库

http://www.denisbauer.com/ASPNETControls/DynamicControlsPlaceholder.aspx

最新更新