2008-10-29 34 views

回答

0

我听说过这个作品,我没有测试过。

创建一个单独的项目来放置您的母版页,因为所有的母版页都像用户控件一样,并且构建在它们自己的独立程序集中。运行构建并尝试引用母版页的程序集。

再次,没有测试,只是我以前读过的东西。

G'luck与它!

2

你可以做到这一点,但它很困难,并有很多缺点。

该过程与封装用户控件类似。基本上你有一个包含你的母版页的Web应用程序项目。您可以使用aspnet_compiler将其预编译为一组dll。

然后您可以使用ilmerge.exe将它们全部放入一个单独的dll中,然后从其他项目中引用它们。

为了使页面在设计器中正确呈现,您仍然需要具有标记,因此您可能还必须研究VirtualPathProviders。

这是一个灵活的解决方案,它有许多缺点。

0

鉴于这些模块都是相同的Web应用程序的一部分,你应该看看this方法:

基本上,你有一个根网站,它被设置为(只),IIS Web应用程序。 您可以通过创建ASP.NET Web应用程序项目来插入新的Web模块,并将其放置在根网站下。 将构建目录设置为根网站的bin,例如。 “.. \ bin” 中。不要创建IIS应用程序/虚拟目录。

因此,每个web模块编译成它自己的DLL,这本身就是一件好事。 编译时,它与根网络“合并”。

这是共享母版页和用户控件的好方法,并且在不同的项目/程序集中包含不同部分的网站。 主页面和用户控件甚至可以在设计模式下工作。

相关问题