我正在使用ASP.NET MVC框架开发用C#编写的Web应用程序。
我想允许我的客户为Web应用程序编写自己的插件。每个客户都有自己的数据库。
我有一些想法如何做到这一点:
我如何允许用户编写插件?我的意思是如何为此提供某种SDK?用户主要需要C#接口和注释,但开发人员还希望在将插件上传到生产服务器之前测试该插件。我可以将我的webapplication包装在某种DLL中,开发人员可以加载它以进行测试但不读取源代码吗?或者还有其他方法吗?
感谢您提供任何相关信息!
答案 0 :(得分:3)
您应该看一下MEF(Managed Extensibility Framework),这是Microsoft为了启用插件应用程序而创建的框架。
简而言之:您创建了一个包含契约(接口)的库。您将该库提供给客户并告诉他们根据这些接口编写插件。
然后你告诉你的应用程序,当它需要width
时,需要在插件文件夹中搜索IPlugin
的实现并使用它。
一些研究网址: