有没有办法从不是 CRM 网页的网页(即不在 CRM 表单中的加载或保存事件中,而是从独立网页中)从 JavaScript 调用 MS CRM Web 服务?第二个问题:有什么方法可以从 VBScript 调用 MS CRM Web 服务?
理想情况下,我想在 CRM 2011 中执行此操作,但很高兴有一个来自 CRM 4.0 的示例。
我想我将不得不编写一个包装网络服务来做到这一点,但除非必要,否则我宁愿不走那条路。
有没有办法从不是 CRM 网页的网页(即不在 CRM 表单中的加载或保存事件中,而是从独立网页中)从 JavaScript 调用 MS CRM Web 服务?第二个问题:有什么方法可以从 VBScript 调用 MS CRM Web 服务?
理想情况下,我想在 CRM 2011 中执行此操作,但很高兴有一个来自 CRM 4.0 的示例。
我想我将不得不编写一个包装网络服务来做到这一点,但除非必要,否则我宁愿不走那条路。
在 CRM 2011 中有一个 OData 接口。OData 是一个 RESTful 端点,可以从任何能够发出 Web 请求的客户端调用。所有 CRM 实体都支持 CRUD(创建、读取、更新、删除)操作。它还可以将输出格式化为 JSON,非常适合在客户端 JavaScript 中使用。这是 SDK 的链接,您可以在其中找到有关 CRM 2011 中 OData 的更多信息
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=0c7dcc45-9d41-4e2e-8126-895517b4274c
对于 CRM 4,选项有限,但我知道至少有一个 Javascript 框架:http: //danielcai.blogspot.com/2010/01/crm-web-service-javascript-toolkit.html
根据我的阅读和实验,无法从 Dynamics CRM 中未托管的外部应用程序调用 oData 端点。
在 Visual Studio 中使用 OData 终结点 Dynamics CRM 中的 OData 服务不允许来自外部应用程序的身份验证。(例外情况是外部应用程序使用 Azure AppFabric 服务总线在它和 Dynamics CRM 的 OData 服务之间传递消息。)但是,Web 资源(例如 Silverlight XAP 文件或 Dynamics CRM 中托管的 JavaScript 文件)解决方案可以使用 OData 服务作为数据源。
我的理解是 WCF 是用于外部应用程序的方式。
只是为了更新答案,您现在可以从外部资源调用 OData 端点(CRM 2013)。 http://msdn.microsoft.com/en-us/library/dn531009.aspx