我是否需要设置debug=";假;在我的ASP.NET web应用程序中,然后使用;“发布网站”;VS2005中的功能?

我是否需要设置debug=";假;在我的ASP.NET web应用程序中,然后使用;“发布网站”;VS2005中的功能?,asp.net,Asp.net,基本上,我想知道的是,在点击“发布网站”按钮之前是否需要设置debug=“false”,或者在所有文件发布后是否可以切换该按钮。您不必关闭该设置,但是,您需要在将网站作为生产应用程序运行之前设置debug=“false”。它将对站点的性能产生深远的影响。在生产服务器上,您可以将deployment retail=“true”放在machine.config中。这将确保该服务器的调试始终为false。详细信息。关于Ryan写的内容-请参阅。 您可能希望使用的另一个选项是。不幸的是,否。您可以将该选

基本上,我想知道的是,在点击“发布网站”按钮之前是否需要设置debug=“false”,或者在所有文件发布后是否可以切换该按钮。

您不必关闭该设置,但是,您需要在将网站作为生产应用程序运行之前设置debug=“false”。它将对站点的性能产生深远的影响。

在生产服务器上,您可以将deployment retail=“true”放在machine.config中。这将确保该服务器的调试始终为false。详细信息。

关于Ryan写的内容-请参阅。

您可能希望使用的另一个选项是。

不幸的是,否。您可以将该选项设置为true来发布它,尽管您当然不应该这样做(如果该页面即将投入生产)。我最初将应用程序发布到测试环境,并将其设置为“true”,然后在测试环境中将其设置为false,并在投入生产时将其绝对设置为false


但您的站点将在调试设置为true的情况下构建并发布到您发送到的任何环境。据我所知,有相当多的网站是以这种方式生产的。Dror发布了一个很好的链接,指向打开此选项后出现的问题。

您可以在发布/预编译时将其设置为true,但一旦其处于生产状态,强烈建议您将该值设置为false

斯科特帖子的亮点:

这样做会导致一些非最佳情况发生,包括:

1) ASP.NET页面的编译需要更长的时间(因为禁用了某些批处理优化)

2) 代码执行速度可能较慢(因为启用了一些其他调试路径)

3) 在运行时,应用程序中会使用更多的内存


4) 从WebResources.axd处理程序下载的脚本和图像不会被缓存

我希望这会增加一些价值。我已经学习了很多关于msbuild的知识,这是一个多么不可思议的工具啊

如果要将站点发布到生产环境中,可能需要自动化一些步骤。如果您希望使用批处理文件而不是visual studio界面进行发布,或者在编译成功后将其包含在生成脚本中,以下内容将发布您的网站

msbuild <yourProjectFile>.csproj 
    /target:"ResolveReferences;_CopyWebApplication"
    /properties:"debug=false;
                 retail=true;
                 WebProjectOutputDir = <YourCorrectOutputDir>;
                 OutDir = <YourCorrectOutputDir>\bin\"
msbuild.csproj
/目标:“ResolveReferences;\u CopyWebApplication”
/属性:“debug=false;
零售=真实;
WebProjectOutputDir=;
OutDir=\bin\“
我们花在时间上的时间,投资于相当广泛的构建脚本,甚至在我们完成构建和发布站点之后,对站点运行一些基本的http get Reguest,已经减少了大量的挫折

我是一个尽可能实现自动化的公司,机器似乎不会像我一样经常忘记做事情

希望能有帮助 干杯 日韩