一点背景 - 我们正在设计一个使用客户端/服务器架构的应用程序:
部署方案引入了独立升级服务器,任何服务器端模块,客户端和任何客户端模块的潜力。但是,需要能够使用不匹配的版本“工作”。因此,我担心版本问题。
到目前为止我的想法:
我的问题围绕着使用两种不同的通信和版本控制模型的想法,这将对我们的开发人员造成额外负担。 System.AddIn似乎相当强大,但也有点笨拙。 (我也不确定微软将来对它的承诺。)另一方面,我对WCF的版本控制能力并不感到兴奋。我觉得可以在WCF中实现System.AddIn视图/适配器/合同系统,但对于这两种技术来说都是新手,我不知道从哪里开始。
所以......我在这里走在正确的轨道上吗?我这么做难吗?在这条路上我有需要注意的问题吗?
感谢。
答案 0 :(得分:0)
这听起来太复杂了。考虑一个体系结构,其中每个添加的模块都包含客户端代码(如果您愿意,请使用System.AddIn),但服务器端模块是新的service.svc文件。客户端将知道相应服务的URL。
或者,您应该查看Microsoft扩展性框架(MEF)以获取加载项功能。这就是他们将在即将发布的版本中开始用于Visual Studio可扩展性的内容。