IAssemblyPostProcessor.PostProcessAssembly メソッド
アセンブリ: System.Web (system.web.dll 内)


AssemblyBuilder クラスは、このメソッドをアセンブリのコンパイル後に呼び出します。アセンブリの読み込み前に実行する必要があるアクションは、すべてこのメソッドに含まれている必要があります。

IAssemblyPostProcessor インターフェイスの実装を作成し、それを Web アプリケーションの Web.config ファイルに登録する方法を次のコード例に示します。
このコード例の最初の部分では、Samples.Process.postProcessTest という名前のクラスが作成されます。このクラスが IAssemblyPostProcessor インターフェイスを実装します。このクラスは、PostProcessAssembly メソッドが呼び出されると、ファイルの書き込みという簡単なアクションを実行します。
Imports Microsoft.VisualBasic Imports System 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
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() { } } }
コマンド csc /target:library postProcessTest.cs を使用してクラスをコンパイルし、.dll ファイルを作成します。作成された .dll ファイルを ASP.NET アプリケーションの Bin フォルダに追加し、この .dll を Web.config ファイルに登録します。次にそのコード例を示します。
<compilation debug="true" assemblyPostProcessorType="Samples.Process.postProcessTest" />
ユーザーが Web サイトにアクセスすると、Web アプリケーションが動的にコンパイルされ、ファイル MyTest.txt が C:\compile に書き込まれます。

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- IAssemblyPostProcessor.PostProcessAssembly メソッドのページへのリンク