封装包含逻辑和webforms的组件的最佳方法

时间:2009-07-01 21:54:15

标签: asp.net

我编写了一个正在多个项目中使用的数据浏览库。库或组件包括一些类以及一些ASPX页面。

到目前为止,我们将所有文件复制到每个项目中以重复使用它,具有明显的缺点和更新噩梦。我想将所有库封装到项目可以使用的组件中。

最好的方法是什么?我知道我可以创建一个DLL,但我认为它只适用于类,不知道如何使用ASPX页面。

我们正在使用Visual Studio 2008和Framework 2.0

提前致谢

1 个答案:

答案 0 :(得分:1)

这是自定义控件的完美案例。

将页面更改为用户控件,并将新用户控件重新嵌入到除了用户控件之外没有任何内容的页面中。

一旦有效,您可以一点一点地将用户控件更改为服务器控件。它们将是复合控件,因为用户控件已经是。

你可以在这个阶段使用一个技巧:我没有回忆这个深夜的细节,但其他人会填补这些:当ASP.NET编译页面时,它首先将标记“编译”为源代码代码,然后编译源代码。您可以让ASP.NET不删除临时源文件。这允许您复制到项目代码中,该代码创建与用户控件完全相同的HTML。

不同之处在于 - 它现在是您的代码,您可以根据需要进行重构,甚至可以将其包含在自定义控件库中。