公司的WebGIS平台采用Silverlight技术实现,根据Silverlight技术目前的发展情况,要做到团队成员之间组件化配置开发,是有一定复杂度的。既然决定了使用Silverlight技术开发WebGIS平台,那么就只能在Silverlight技术领域寻找解决方案。
第一个映入眼帘的就是MEF,地址为http://mef.codeplex.com/,在下载了示例程序并运行之后,发现其思路极其符合我们要求的:团队中只有一个Silverlight地图框架,其它的功能都是xap包,能够加载并运行于Silverlight地图框架之上,并获得地图句柄,进行地图的相关操作。示例程序中,通过Import和Export机制,解决了不同xap包之间传递不同对象的技术难题,一下子将我们预期完成时间缩短了非常多。一切都在顺利的进行着,直到组件xap需要通过地图控件句柄操作地图控件的时候,问题来了:组件获取不到地图控件句柄。在解决了几天仍然没方法的时候,另一个解决方案出现了:Prism,地址为http://compositewpf.codeplex.com/。 Read the rest of this entry »