在我工作的公司中,我们有一个用.NET开发的桌面应用程序,我们希望为其他软件开发人员开放一些部件.
我认为这就像其他软件可以访问的某种公共方法.是否有任何标准方法,最佳实践或其他经验?
我想你可以用Win32调用,C/C++编程等来做到这一点.但我主要是一个.NET开发人员,并且有多年的主要编程方法,主要是VB.NET,还有一些C#.我希望在.NET中找到一种方法.但它应该可以访问其他语言开发的软件.
最好的祝福/
马格努斯
解决方法
有两种方法可以解决这个问题.第一个涉及使用插件/模块模式.
Start here为此.
第二种方法是通过记录良好的程序集简单地公开API逻辑.
你选择的方式实际上归结为你希望如何实现它.例如,Adobe Photoshop在很大程度上使用插件模式. MS Office使用这两个插件,并提供用于处理应用程序的对象接口.
更新:
只需将对象范围设置为Public,就可以将.Net程序集中的对象公开给外部应用程序使用.这包括Windows窗体,业务对象,枚举等.
从外部开发人员的角度考虑一下.他们需要提供哪些信息才能成功扩展/控制您的产品?无论如何,将其放在帮助文件中.
另外,请使用.Net的自动记录功能.这包括添加IDE已经知道如何通过intellisense读取和显示的XML文档.例如:
/// <summary> /// Gets all active documents for the specified customer. /// </summary> /// <param name="customerId">The Id of the customer.</param> /// <returns>A list of documents for this customer.</returns> public static List<Document> GetDocuments(int customerId) { //... do something ... }