我正在使用.Net 2.0 ASP.NET Web应用程序。
我正在以编程方式创建一个包含在Web应用程序中的xml文件中指定的命名空间和类的程序集。 我已经创建了一个单独的库来实现这一点,我得到了程序集,那很好。
但我不想将其作为预编译组件引用。
我想动态创建它,所以当我运行Web应用程序的构建时,构建程序集,添加对程序集的引用,然后Web应用程序代码可以进一步使用它。另外,我可以拥有intellisense。
现在这正是构建提供程序的场景,但问题是构建提供程序不适用于此类应用程序。
我设法像这样运行程序集生成工具:
<Target Name="BeforeBuild">
<Exec Command="CreateAssembly.exe config.xml"/>
</Target>
但动态引用生成的程序集没有运气..
答案 0 :(得分:1)
您正在寻找的类是System.Reflection命名空间中的Assembly类。
Assembly.Load(AssemblyPath)
或
Assembly.LoadFrom(AssemblyPath)
这些方法可用于将未引用的程序集加载到您的app-domain中。
有各种条件和限制因此我会同时阅读它们。
Assembly.Load(MSDN)
Assembly.LoadFrom(MSDN)
玩得开心!
答案 1 :(得分:0)
我最近一直在使用Rake来自动化构建,所以你可能想尝试一下。以下是您可能会发现有用的几个链接: