Thursday, March 31, 2011

Why can't you build a website in release mode?

In ASP.Net, if I set up a web application I can configure it to be in release mode but with a website I can only set the configuration to be in debug mode. Why is this?

From stackoverflow
  • In web site projects each page is compiled dynamically upon first request. It will compile without debugging symbols unless you specify otherwise in the config file.

    Outlaw Programmer : "each page is compiled dynamically for each page." Do you mean each page is compiled per REQUEST?
    Joel Coehoorn : No, each deployment.
    Peter J : Thanks Outlaw...fixed the grammar.
  • Probably because a Web Application compiles the whole website into one DLL. To run and debug pages requires recompiling the entire application. Whereas a website project compiles dynamically at the page level.

  • For websites one releases the source code to the site, there is no build to be done.

    The code is built on site.

  • A Web Site's debug/release is controlled by the Web.Config file:

    <system.web>
      ...
      <compilation debug="true">
      ...
      </compilation>
    </system.web>
    

    Set debug="true" for debugging, set debug="false" for release.

0 comments:

Post a Comment