我最近从VS2003升级到VS2010,在VS2003中,我在ASP.NET 2.0网站上工作,在VS2010中,我已经迁移到了ASP.NET 4.0。到目前为止,让我的网站使用新版本进行编译是一件非常令人头疼的事情。一个问题是我的aspx.cs页面无法在我的项目中找到共享代码库。我通过将我的共享代码移到App_Code文件夹来解决这个问题(如果有其他/更好的方法,请让我知道)。
我发现另一个令人困惑的问题是预编译。使用VS2003,我可以单击build project按钮,它会将我的站点预编译成myweb.dll和myweb.pdb文件。现在我在VS2010中遇到了同样的问题。当我在VS2010中构建站点时,并没有创建dll。我确实设法找到了一个“发布”网站的选项,这需要永远(比如2分钟),并且涉及到将网站复制到另一个文件夹。这是可以接受的,但它不是生成单个DLL文件,而是生成一堆文件: App_code.compiled、app_code.dll、App_code.pdb、App_global.asax.compiled、App_global.asax.dll、App_global.asax.pdb、App_Web_lrpcway1.dll、App_Web_lrpcway1.compiled、App_Web_lrpcway1.pdb。
这个应用程序可以工作-我可以使用所有这些文件来部署它。然而,我真的希望有人能解释一下什么是额外的文件,以及是否有更好的方法来做到这一点。
谢谢
发布于 2011-02-03 01:18:02
这就是网站和web应用程序之间的区别。您可以将您的网站转换为web应用程序,使其行为更像您所习惯的那样。
appCode中的文件是在需要运行时编译的,因此不在bin/debug文件夹中提供dll.s,但它们应该在应用程序实际运行时创建(但它不在相同的位置)。
这里有一篇关于它的很好的文章Link
发布于 2011-03-22 18:07:11
您可以使用ASP.NET合并工具将所有小的DLL合并为一个大的DLL。
https://stackoverflow.com/questions/4881663
复制