<?xml version="1.0" encoding="utf-8"?>
<Type Name="AssemblyBuilder" FullName="System.Web.Compilation.AssemblyBuilder">
  <TypeSignature Language="C#" Value="public class AssemblyBuilder" />
  <AssemblyInfo>
    <AssemblyName>System.Web</AssemblyName>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <since version=".NET 2.0" />
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Instances of the <see cref="T:System.Web.Compilation.AssemblyBuilder" /> class are used with <see cref="T:System.Web.Compilation.BuildProvider" /> class methods to build one or more files into a compiled assembly.</para>
      <para>The <see cref="T:System.Web.Compilation.BuildProvider" /> class defines build functionality for individual files, and the <see cref="T:System.Web.Compilation.AssemblyBuilder" /> class combines the source code contributed by each <see cref="T:System.Web.Compilation.BuildProvider" /> instance into a single assembly. The ASP.NET build environment passes an <see cref="T:System.Web.Compilation.AssemblyBuilder" /> object to the <see cref="T:System.Web.Compilation.BuildProvider" /> methods when building an assembly from one or more files, so that each <see cref="T:System.Web.Compilation.BuildProvider" /> instance can contribute source code for its file to the overall assembly. </para>
      <para>The ASP.NET build environment determines the language and compiler required by files within the project, based on the <see cref="P:System.Web.Compilation.BuildProvider.CodeCompilerType" /> property. The build environment groups files based on their compiler settings and builds an assembly from files that require the same compiler.</para>
      <para>The <see cref="P:System.Web.Compilation.AssemblyBuilder.CodeDomProvider" /> property indicates the <see cref="T:System.CodeDom.Compiler.CodeDomProvider" /> implementation that the ASP.NET build environment uses to compile an assembly from the source code contributed by each <see cref="T:System.Web.Compilation.BuildProvider" /> implementation.</para>
      <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> object contributes source code in the form of a CodeDOM graph using the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddCodeCompileUnit(System.Web.Compilation.BuildProvider,System.CodeDom.CodeCompileUnit)" /> method. A <see cref="T:System.Web.Compilation.BuildProvider" /> object contributes source code stored in a physical file using the <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" /> method. </para>
      <para>After each <see cref="T:System.Web.Compilation.BuildProvider" /> object contributes source code using the appropriate <see cref="T:System.Web.Compilation.AssemblyBuilder" /> methods, the ASP.NET build environment uses the <see cref="T:System.Web.Compilation.AssemblyBuilder" /> class to compile the collected source code into an assembly.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Provides a container for building an assembly from one or more virtual paths within an ASP.NET project.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName="AddAssemblyReference">
      <MemberSignature Language="C#" Value="public void AddAssemblyReference (System.Reflection.Assembly a);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="a" Type="System.Reflection.Assembly" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> implementation uses the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddAssemblyReference(System.Reflection.Assembly)" /> method when generating source code that references types within the input assembly. </para>
          <para>The ASP.NET build environment initializes the default collection of assemblies available for reference through the build provider in the <see cref="P:System.Web.Compilation.BuildProvider.ReferencedAssemblies" /> property. If the build provider generates source code that references additional assemblies, the build provider adds the additional assemblies using the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddAssemblyReference(System.Reflection.Assembly)" /> method. The ASP.NET build environment resolves external types during assembly compilation using both the referenced assemblies added by build providers and the default collection of assemblies available for reference.</para>
          <para>Typically, a <see cref="T:System.Web.Compilation.BuildProvider" /> object adds source code to the <see cref="T:System.Web.Compilation.AssemblyBuilder" /> object in the <see cref="M:System.Web.Compilation.BuildProvider.GenerateCode(System.Web.Compilation.AssemblyBuilder)" /> method. If a build provider generates source code that uses an external type, the build provider adds the type's assembly using the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddAssemblyReference(System.Reflection.Assembly)" /> method.</para>
          <para>Use the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddAssemblyReference(System.Reflection.Assembly)" /> method to add a referenced assembly required in source code generated by a <see cref="T:System.Web.Compilation.BuildProvider" /> instance for a specific file type. Use the <format type="text/html"><a href="3811c448-af1c-498d-be2b-6ed2634c51e9">&lt;assemblies&gt;</a></format> configuration element to configure an assembly for reference across multiple file types in a project.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Adds an assembly that is referenced by source code generated for a file.</para>
        </summary>
        <param name="a">
          <attribution license="cc4" from="Microsoft" modified="false" />An assembly referenced by a code compile unit or source file included in the assembly compilation.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AddCodeCompileUnit">
      <MemberSignature Language="C#" Value="public void AddCodeCompileUnit (System.Web.Compilation.BuildProvider buildProvider, System.CodeDom.CodeCompileUnit compileUnit);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="buildProvider" Type="System.Web.Compilation.BuildProvider" />
        <Parameter Name="compileUnit" Type="System.CodeDom.CodeCompileUnit" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> implementation calls the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddCodeCompileUnit(System.Web.Compilation.BuildProvider,System.CodeDom.CodeCompileUnit)" /> method when generating a CodeDOM graph for a virtual path. Source code added with <see cref="M:System.Web.Compilation.AssemblyBuilder.AddCodeCompileUnit(System.Web.Compilation.BuildProvider,System.CodeDom.CodeCompileUnit)" /> is included in the assembly compilation. </para>
          <para>Typically, a build provider's <see cref="M:System.Web.Compilation.BuildProvider.GenerateCode(System.Web.Compilation.AssemblyBuilder)" /> method implementation reads the <see cref="P:System.Web.Compilation.BuildProvider.VirtualPath" /> property, parses the contents, and then adds the generated source code to the specified <see cref="T:System.Web.Compilation.AssemblyBuilder" /> object. The build provider uses the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddCodeCompileUnit(System.Web.Compilation.BuildProvider,System.CodeDom.CodeCompileUnit)" /> method to add source code as a CodeDOM graph to the assembly. Alternately, the build provider can use the <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" /> method to add source code as a physical file to the assembly.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Adds source code for the assembly in the form of a CodeDOM graph.</para>
        </summary>
        <param name="buildProvider">
          <attribution license="cc4" from="Microsoft" modified="false" />The build provider generating <paramref name="compileUnit" />.</param>
        <param name="compileUnit">
          <attribution license="cc4" from="Microsoft" modified="false" />The code compile unit to include in the assembly compilation.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CodeDomProvider">
      <MemberSignature Language="C#" Value="public System.CodeDom.Compiler.CodeDomProvider CodeDomProvider { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.CodeDom.Compiler.CodeDomProvider</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="P:System.Web.Compilation.AssemblyBuilder.CodeDomProvider" /> property indicates the <see cref="T:System.CodeDom.Compiler.CodeDomProvider" /> implementation that the ASP.NET build environment uses to compile an assembly from the source code contributed by each <see cref="T:System.Web.Compilation.BuildProvider" /> implementation.</para>
          <para>The ASP.NET build environment determines the language and compiler required by files within the project, based on the <see cref="P:System.Web.Compilation.BuildProvider.CodeCompilerType" /> property. The build environment groups files based on their compiler settings and builds an assembly from files that require the same compiler.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the compiler used to build source code into an assembly.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CreateCodeFile">
      <MemberSignature Language="C#" Value="public System.IO.TextWriter CreateCodeFile (System.Web.Compilation.BuildProvider buildProvider);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.IO.TextWriter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="buildProvider" Type="System.Web.Compilation.BuildProvider" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> implementation calls the <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" /> method when generating a source file for a virtual path. Source code added with <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" /> is included in the assembly compilation. </para>
          <para>Typically, a build provider <see cref="M:System.Web.Compilation.BuildProvider.GenerateCode(System.Web.Compilation.AssemblyBuilder)" /> method implementation reads the <see cref="P:System.Web.Compilation.BuildProvider.VirtualPath" /> property, parses the contents, and then adds the generated source code to the specified <see cref="T:System.Web.Compilation.AssemblyBuilder" /> object. The build provider uses the <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" /> method to add source code as a physical file to the assembly. Alternately, the build provider can use the <see cref="M:System.Web.Compilation.AssemblyBuilder.AddCodeCompileUnit(System.Web.Compilation.BuildProvider,System.CodeDom.CodeCompileUnit)" /> method to add source code as a CodeDOM graph to the assembly.</para>
          <para>After calling <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateCodeFile(System.Web.Compilation.BuildProvider)" />, the build provider writes the source file contents using the returned <see cref="T:System.IO.TextWriter" /> object. After writing the source file, the <see cref="T:System.Web.Compilation.BuildProvider" /> object must use the <see cref="M:System.IO.TextWriter.Close" /> method to close the <see cref="T:System.IO.TextWriter" /> object and free associated system resources.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Allows a build provider to create a temporary source file, and include the source file in the assembly compilation.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An open <see cref="T:System.IO.TextWriter" /> that can be used to write source code to a temporary file.</para>
        </returns>
        <param name="buildProvider">
          <attribution license="cc4" from="Microsoft" modified="false" />The build provider generating the code source file.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CreateEmbeddedResource">
      <MemberSignature Language="C#" Value="public System.IO.Stream CreateEmbeddedResource (System.Web.Compilation.BuildProvider buildProvider, string name);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.IO.Stream</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="buildProvider" Type="System.Web.Compilation.BuildProvider" />
        <Parameter Name="name" Type="System.String" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>After calling the <see cref="M:System.Web.Compilation.AssemblyBuilder.CreateEmbeddedResource(System.Web.Compilation.BuildProvider,System.String)" /> method, a <see cref="T:System.Web.Compilation.BuildProvider" /> object writes the resource file contents using the returned <see cref="T:System.IO.Stream" /> object. For example, the build provider can write the resources using a <see cref="T:System.Resources.ResourceWriter" /> object. After writing the resource file, the build provider must use the <see cref="M:System.IO.Stream.Close" /> method to close the <see cref="T:System.IO.Stream" /> object and free associated system resources.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Allows a build provider to create a resource file to include in the assembly compilation.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An open <see cref="T:System.IO.Stream" /> that can be used to write resources, which are included in the assembly compilation.</para>
        </returns>
        <param name="buildProvider">
          <attribution license="cc4" from="Microsoft" modified="false" />The build provider generating the resource.</param>
        <param name="name">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the resource file to be created.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GenerateTypeFactory">
      <MemberSignature Language="C#" Value="public void GenerateTypeFactory (string typeName);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="typeName" Type="System.String" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> implementation calls the <see cref="M:System.Web.Compilation.AssemblyBuilder.GenerateTypeFactory(System.String)" /> method to optimize performance for frequent creations of type instances.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Inserts a fast object factory template for a type into the compiled assembly.</para>
        </summary>
        <param name="typeName">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the type to generate.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetTempFilePhysicalPath">
      <MemberSignature Language="C#" Value="public string GetTempFilePhysicalPath (string extension);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="extension" Type="System.String" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Web.Compilation.BuildProvider" /> implementation calls the <see cref="M:System.Web.Compilation.AssemblyBuilder.GetTempFilePhysicalPath(System.String)" /> method to get a temporary file path that is deleted automatically after the assembly is compiled. </para>
          <para>The <see cref="M:System.Web.Compilation.AssemblyBuilder.GetTempFilePhysicalPath(System.String)" /> method generates a unique temporary file path, but does not create the file.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Generates a temporary file path.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A path to a temporary file, with the specified file extension.</para>
        </returns>
        <param name="extension">
          <attribution license="cc4" from="Microsoft" modified="false" />The file extension to use for the temporary file.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
  </Members>
</Type>