在C#中的Enterprise Services(微软应用程序服务器)技术基于COM+技术,通常是为分布式解决方案提供服务。
在这里先来一个简单的示例:
1.首先来创建一个简单的COM+应用程序
(注意:所有的COM+应用程序都必须编写为库应用程序,而且每个服务器组件类必须派生于基类ServicedComponent)。
在新建的工程中添加System.EnterpriseServices程序集的引用。
代码如下:
你可以修改工程属性中的assembly名(即编译后的dll名称),也可以不更改。这里更改为SimpleServer,如下图所示:
生成Key文件将此程序集变为强命名的程序集。
AssemblyInfo.cs文件中将ComVisible 属性设为true。
编译之。
2.创建客户端:
在新建的工程中添加System.EnterpriseServices程序集的引用。并添加对工程SimpleComponent(COM+)的引用。
客户端代码如下:
编译之。运行结果为:
注意:
关于注册COM+组件:
这里使用的是动态自动注册,只需把包含组件的程序集拷贝至应用程序文件夹,当第一个程序请求此组件的时候,CLR会自动注册此组件。
但是这只适合于开发阶段的部署,运用时需要通过regcvcs命令手工部署,也可以通过组件服务浏览器(控制面板-->管理工具-->组件服务)部署.
参考资料:
http://dev.firnow.com/course/4_webprogram/asp.net/asp_netshl/2008319/105118.html