IAssemblyPostProcessor.PostProcessAssembly(String) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Aangeroepen voordat de assembly wordt geladen, zodat de implementatieklasse de assembly kan wijzigen.
public:
void PostProcessAssembly(System::String ^ path);
public void PostProcessAssembly(string path);
abstract member PostProcessAssembly : string -> unit
Public Sub PostProcessAssembly (path As String)
Parameters
- path
- String
Het pad naar de assembly.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een implementatie van de IAssemblyPostProcessor interface maakt en deze registreert in het Web.config-bestand van een webtoepassing.
In het eerste deel van het codevoorbeeld wordt een klasse gemaakt met de naam Samples.Process.postProcessTest die de IAssemblyPostProcessor interface implementeert. Deze klasse voert de eenvoudige actie uit om een bestand te schrijven wanneer de PostProcessAssembly methode wordt aangeroepen.
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
Compileer de klasse in een .dll-bestand met de opdracht csc /target:library postProcessTest.cs. Voeg het resulterende .dll bestand toe aan de map Bin van een ASP.NET toepassing en registreer de .dll in het Web.config bestand, zoals wordt weergegeven in de volgende code.
<compilation debug="true" assemblyPostProcessorType="Samples.Process.postProcessTest" />
Wanneer een gebruiker de website bezoekt, wordt de webtoepassing dynamisch gecompileerd en wordt het bestand MyTest.txt naar C:\compile geschreven.
Opmerkingen
De AssemblyBuilder klasse roept deze methode aan nadat de assembly is gecompileerd. Alle acties die moeten worden uitgevoerd voordat de assembly wordt geladen, moeten in deze methode worden opgenomen.