次の方法で共有


IAssemblyPostProcessor.PostProcessAssembly(String) メソッド

定義

アセンブリが読み込まれる前に呼び出されます。これを実装したクラスは、アセンブリを変更できます。

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

パラメーター

path
String

アセンブリへのパス。

次のコード例では、 インターフェイスの実装を作成し、Web アプリケーションの IAssemblyPostProcessor Web.config ファイルに登録する方法を示します。

コード例の最初の部分では、 インターフェイスを実装する という名前 Samples.Process.postProcessTest のクラスを IAssemblyPostProcessor 作成します。 このクラスは、 メソッドが呼び出されたときにファイルを書き込むという単純なアクションを PostProcessAssembly 実行します。

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

コマンド を使用して、 クラスを .dll ファイルにコンパイルします csc /target:library postProcessTest.cs。 結果の.dll ファイルを ASP.NET アプリケーションの Bin フォルダーに追加し、次のコードに示すように、Web.config ファイルに.dllを登録します。

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

ユーザーが Web サイトにアクセスすると、Web アプリケーションが動的にコンパイルされ、MyTest.txtファイルが C:\compile に書き込まれます。

注釈

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

適用対象