2012-03-13 23 views
2

人们发现/用于向.NET/C#应用程序添加功能而无需重新编译的方式有哪些?在没有重新编译的情况下向C#应用程序添加功能的方法

我想到的方法是寻找要读取的文件,解析该文件,然后根据文件中包含的内容动态创建控件及其事件处理程序等。一个xml文件)。

或者会动态加载.DLL被认为是“不重新编译”?

任何想法/“战争故事”?

+0

也许,加载一个JavaScript文件并将其作为浏览器的容器执行。 http://stackoverflow.com/questions/9668006/running-javascript-in-c-sharp-application-with-arguments-and-return/9669148#9669148 – 2012-03-13 17:18:16

+0

看到这个问题:http://stackoverflow.com/questions/ 835182 /选择-之间-MEF-和-MAF-系统插件 – 2012-03-13 18:07:32

回答

2

对于相当简单的情况下,具有明确的行为:

定义一个接口,让插件。 在dll中实现接口。 用Assembly.LoadFrom加载dll。

我会为每个dll添加一个GUID,所以你可以告诉它们分开。

1

看看ASP.Net是如何实现的 - 您可以在网站运行时添加ASPX/ASPX.cs文件。简短版本:ASP.Net监听文件更改并将新文件编译到新程序集中,而不是加载到现有AppDomain中以用于呈现新页面。

相关问题