定义动态程序集

更新:2007 年 11 月

反射发出提供许多创建动态程序集的方法。可以使用不同的 System.AppDomain.DefineDynamicAssembly 方法创建动态程序集。DefineDynamicAssembly 返回一个 AssemblyBuilder 对象。DefineDynamicAssembly 要求调用方指定 AssemblyBuilderAccess 枚举值。枚举值指定是只运行、只保存还是运行和/或保存动态程序集。有些方法要求调用方提供证据。证据是构成安全策略决策(如哪些权限可以授予代码)的输入的一组信息。其他方法要求调用方请求权限。存在三类权限请求:必选、可选和被拒绝。

下面的列表确定了各种定义动态程序集的方法:

  • 定义命名的动态程序集。

  • 已知保存程序集的目录,定义命名的动态程序集。

  • 已知证据,定义命名的动态程序集。

  • 已知权限请求,定义命名的动态程序集。

  • 已知证据和保存程序集的目录,定义命名的动态程序集。

  • 已知权限请求和保存程序集的目录,定义命名的动态程序集。

  • 已知证据和权限请求,定义命名的动态程序集。

  • 已知证据、权限请求和保存程序集的目录,定义命名的动态程序集。

  • 已知证据、权限请求、保存程序集的目录和指示动态程序集中的模块、类型和成员的创建是否应同步的 Boolean 参数,定义命名的动态程序集。

可以使用 AssemblyBuilder.Save 方法来保存持久动态程序集。Save 方法指定程序集应写入的文件的名称。

请参见

其他资源

使用反射发出