IAssemblyPostProcessor.PostProcessAssembly(String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.