通过SOAP请求与Microsoft Dynamic CRM online服务器进行连接
本来以为直接用Microsoft Dynamic CRM 2011 SDK就万事大吉了,但是没想到CRM 2011 SDK在Metro程序里根本没法用。查了很多资料发现,CRM 2011 SDK是用.Net Framework 4.0编写的,而Metro程序是运行在WinRT上。那是不是不用SDK就没法连接到CRM online服务器了呢?报着这样的疑问又开始查资料。后来在Microsoft Dynamics CRM Team的官方博客找到一篇名为“Building clients for Windows Phone and Windows 8 RT”的文章。文章里说Dynamics CRM 2011 SDK是无法用于Windows Phone和Windows 8 RT平台开发的。但是他们提供了一个sample解决方案,这个解决方案包含了2个重新编写的CRM SDK的DLL(包含源码哦)、1个Windows Phone工程和1个Windows 8 RT工程。后面2个工程可以通过这2个新的DLL连接Dynamic CRM。但是目前来说它只是个Sample,还是由一些功能是制限的。所以也没有采用这个解决方案(http://blogs.msdn.com/b/crm/archive/2012/11/02/building-clients-for-windows-phone-and-windows-8-rt.aspx)。只能苦逼的继续查资料(查的都快吐了。。。)。
经过大概1周的调查,在最后要放弃的时候,偶然发现了一篇名为“Connecting to CRM Online 2011 Web Services using SOAP Requests Only”的文章。文章的作者说它只通过SOAP协议就可以连接到CRM online。经过我的测试,确实可以连接上CRM online。文章的地址是:https://community.dynamics.com/product/crm/crmtechnical/b/crmgirishraja/archive/2011/02/04/connecting-to-crm-online-2011-web-services-using-soap-requests-only.aspx?wa=wsignin1.0。至于如何实现的,我就不多说了,我相信看到代码就懂了。在使用SOAP连接CRM online服务器的时候,如何编写SOAP请求呢?这也是我刚开始的疑问,后来发现只要通过Fiddler工具去捕获CRM 2011 SDK的https请求,就能很容易得到你想要的SOAP请求哦!!