MSBuild Support, Web Site Property Pages Dialog Box


This property page allows you to specify options to precompile a Web site from the command line using the MSBuild tool. MSBuild produces the same output as the Publish Web Site command on the Build menu, and allows you to save the Web site to a disk location.


Accessibility tools are not available in Microsoft Visual Web Developer Express Edition.

The MSBuild tool is used in Microsoft Visual Studio to build projects from the command line. The tool is responsible for calling the appropriate compiler for a given project type; for Web projects, MSBuild invokes the aspnet_compiler.exe command.

By default, Web projects are different from other types of Visual Studio projects, which include their compilation requirements. The options in the MSBuild Options property page allow you to configure your Web site to include the information necessary for MSBuild to be able to compile your project.

To access this dialog box

  1. In Visual Web Developer, in the Solution Explorer pane, click your Web site project name.

  2. Click View, and then click Property Pages.

    Alternatively, you can right-click your Web site project name in Solution Explorer and click Property Pages.

    The Property Pages window appears.

  3. Click the MSBuild Options node.

Output Folder

Specifies the output path for the precompilation process. The results of precompilation will be written to the specified folder, overwriting (without warning) any existing content in that folder.

Allow this precompiled site to be updatable

Specifies that the content of .aspx pages are not compiled into an assembly; instead, the markup is left as-is, allowing you to change HTML and client-side functionality after precompiling the Web site. Selecting this check box is equivalent to adding the -u option to the aspnet_compiler.exe command.

Use fixed naming and single page assemblies

Specifies that batching will be turned off during precompilation in order to generate assemblies with fixed names. Themes and skin files will continue to be compiled to a single assembly. This option is not allowed for in-place compilation.

Enable strong naming on precompiled assemblies

Specifies that the generated assemblies are to be strongly named using a key file or key container to encode the assemblies and ensure that they have not been tampered with. After you select this check box, you can do the following:

  • Specify the location of a key file to use to sign the assemblies. If you use a key file, you can select Delay signing, which signs the assembly in two stages: first with the public key file, and then with a private key file specified later during a call to the aspnet_compiler.exe command.

  • Specify the location of a key container from the system's CSP (Cryptographic Service Provider) to use to name the assemblies.

  • Select whether to mark the assembly with the AllowPartiallyTrustedCallers property, which allows strongly named assemblies to be called by partially trusted code. Without this declaration, only fully trusted callers are able to use such assemblies.


    Selecting this option might compromise the security of your generated assembly.