IAssemblyPostProcessor.PostProcessAssembly(String) Método

Definición

Se le llama antes de que el ensamblado se cargue para permitir que la clase que efectúa la implementación modifique el ensamblado.

public:
 void PostProcessAssembly(System::String ^ path);
public void PostProcessAssembly (string path);
abstract member PostProcessAssembly : string -> unit
Public Sub PostProcessAssembly (path As String)

Parámetros

path
String

Ruta de acceso al ensamblado.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una implementación de la IAssemblyPostProcessor interfaz y registrarla en el archivo Web.config de una aplicación web.

La primera parte del ejemplo de código crea una clase denominada Samples.Process.postProcessTest que implementa la IAssemblyPostProcessor interfaz . Esta clase realiza la acción simple de escribir un archivo cuando se llama al PostProcessAssembly método .

using System;
using System.Web.Compilation;
using System.IO;

namespace Samples.Process
{
    public class postProcessTest : IAssemblyPostProcessor
    {
        public static void Main(String[] args)
        {
        }

        public void PostProcessAssembly(string path)
        {
            StreamWriter sw = File.CreateText(@"c:\compile\MyTest.txt");
            sw.WriteLine("Compiled assembly:");
            sw.WriteLine(path);
            sw.Close();
        }

        public void Dispose()
        {
        }
    }
}
Imports System.Web.Compilation
Imports System.IO

Namespace Samples.Process
    Public Class postProcessTest
        Implements IAssemblyPostProcessor

        Sub Main()

        End Sub

        Public Sub PostProcessAssembly(ByVal path As String) _
            Implements IAssemblyPostProcessor.PostProcessAssembly
            Dim sw As StreamWriter
            sw = File.CreateText("c:\compile\MyTest.txt")
            sw.WriteLine("Compiled assembly:")
            sw.WriteLine(path)
            sw.Close()
        End Sub

        Public Sub Dispose() Implements IDisposable.Dispose

        End Sub
    End Class
End Namespace

Compile la clase en un archivo .dll con el comando csc /target:library postProcessTest.cs. Agregue el archivo de .dll resultante a la carpeta Bin de una aplicación de ASP.NET y registre el .dll en el archivo Web.config, como se muestra en el código siguiente.

<compilation debug="true" assemblyPostProcessorType="Samples.Process.postProcessTest" />  

Cuando un usuario visita el sitio web, la aplicación web se compila dinámicamente y el archivo MyTest.txt se escribirá en C:\compile.

Comentarios

La AssemblyBuilder clase llama a este método una vez compilado el ensamblado. Cualquier acción que se realice antes de cargar el ensamblado debe incluirse en este método.

Se aplica a