2010-06-15 53 views
0

我有一些经典的asp代码需要转换为asp.net。到目前为止,我已经尝试使用数据采集器和中继器来实现这一点,并且没有运气,因为菜单在4个不同的记录集中循环,在传送到下一个记录之前传递menuNid。如何将这个经典的asp转换为asp.net

请问你能告诉我用什么方法来转换这些代码......例如数据采集器?数据集?等等?

感谢

回答

2

哎哟...这是一些缓慢且重复的代码...(请原谅我的钝...)

您可以阅读您需要的所有数据(使用DataSet和SqlDataAdapter)到DataTable中,以便您可以重复使用它,而不必为菜单中的每个级别和每个项目运行查询。这样,您可以进行单个数据库调用而不是其中的大部分调用,而数据库调用绝对是此代码中的瓶颈。

您可以使用递归来获得不同的级别,而不是一遍又一遍地重复相同的代码。

要构建菜单的元素,您有几个选项。一种方法是在页面中放置一个PlaceHolder,并通过将控件添加到其他控件集合中来创建控件树。另一种选择是简单地在StringBuilder中自己构建HTML代码,并将结果放在Literal控件中。

+0

感谢您的帮助。它遇到的最糟糕的意大利面条!它是在2000年写成的。 – Phil 2010-06-15 12:56:27

2

以及你有几个选项有..

asp.net支持ASP风格标记,意味着<%%>等仍然支持..你能保持你的代码几乎是一些小调整.. 但你会错过它所提供的90%。即标记和代码的分离。

我建议你熟悉在asp.net服务器控件模型你的自我,并重写你的页面,用它来摆脱所有%的废话..

我们不能教你在ASP.NET一个形式的答案,但服务器控件是方法论的核心,所以理解它们会给你带来一个好主意,以便如何去转换你的东西.. http://www.w3schools.com/ASPNET/aspnet_controls.asp