ASP.NET不会自动重建

时间:2009-07-15 12:38:46

标签: asp.net

如果您创建一个ASP.NET网站项目并运行它,则会得到一个空白页面。如果你进入默认的CodeBehind文件,添加到Page_Load方法throw new Exception();,保存文件,并在浏览器中刷新它(不重建),服务器自动重建项目,页面将出错。

我现在正在进行一个项目,刷新页面不会导致重建项目(使用新的aspx文件,但旧的DLL与它们一起使用)。是什么导致这种情况,我该如何纠正?

5 个答案:

答案 0 :(得分:1)

这个新项目是否是一个Web应用程序项目?我相信你必须在看到变化之前真正构建它。

答案 1 :(得分:0)

Web应用程序项目是一种单独的项目类型,需要构建所有代码。生成的dll是在bin文件夹下构建的。文件后面的代码不用于执行,如果您不想在已安装的Web服务器上公开代码,并且确保执行速度更快(从不在运行时编译),则是执行此操作的优先方式。

当您将其创建为“ASP.NET网站”时,它不是“Web应用程序项目”。

答案 2 :(得分:0)

您正在使用网站模型。访问它们时将编译页面。同一解决方案中的类库项目不会。因此,为什么你会看到这种行为。

默认情况下,ASPX,代码隐藏和App_Code源文件被编译。如果您在解决方案中有一个单独的项目(可能是BLL或DAL),只需刷新浏览器就不会更新这些项目。

因此,要更正它,您可以在Visual Studio中进行正确的构建,或者您可以将要更改的类文件移动到App_Code中。我个人坚持使用前者(实际上我从未使用过网站选项 - 总是Web应用程序项目)。

答案 3 :(得分:0)

只有App_Code中的代码在更改时才会自动重新编译。如果您的代码存在于其他任何地方,那么它就是您在“编译”时获得的预构建DLL的一部分。

答案 4 :(得分:0)

行。您是否启用了“编辑并继续”? MSDN