易于更新应用程序的体系结构

时间:2020-03-06 15:04:29  来源:igfitidea点击:

我有一个适当的系统,该系统将计算应用于一组数字(具体信息并不十分相关)。系统用户可以使用许多计算集,并且经常添加新的计算集。当前,当需要将一组新的计算添加到系统中时,会将它们添加到代码库中,并发布系统的新版本。我希望能够向系统中添加新的计算集,而不必发布一个全新的版本,并使这些新的计算对系统用户自动可见。当前,将为每组计算创建一个新函数,并将包含适当函数名的记录添加到系统表中。这些记录对系统用户可见(功能名称当然是别名!),然后从列表中选择它们。系统使用Eval()函数来运行适当的计算。

这是我继承的VB6 / Access应用程序,当前正在VB.NET和SQL Server中重写。

有人对如何最好地做到这一点有任何建议吗?

解决方案

由于我们是在.Net中重做它,因此只需将计算结果放入插件中即可。使用反射在运行时加载和检查这些程序集,并向用户展示功能。

Divil在撰写基于插件的应用程序方面有一篇不错的文章(但现在已经相当老了)。它将为我们提供帮助:http://divil.co.uk/net/articles/plugins/plugins.asp(+在VB.Net中)

如果以这种方式进行操作,则只需将dll拖放到正确的目录中即可使用。