我们很快就会升级到CRM 2011,所以我正在做一些测试。问题是当我将我的Web服务引用更改为2011时,我的应用程序停止编译。它只是找不到任何实体(停止工作的行的示例:Account acc = new Account()
- >它说我必须错过参考)。
当我将CRM 4的Web服务与CRM 2011的Web服务进行比较时,我发现这是真的。 CRM 4的CrmService包含CRM的每个实体的定义,但它们没有出现在CRM 2011中!
为什么?我错过了什么吗?我需要激活一些东西吗?
只是为了确保,这里是我正在使用的网址:
http://myserver/mscrmservices/2006/CrmServiceWsdl.aspx - >完美运作
http://myserver/mscrmservices/2007/CrmService.asmx?WSDL - >不包含实体定义
http://myserver/mscrmservices/2007/CrmService.asmx?WSDL&uniquename=MyOrg - >不包含实体定义
http://myserver/mscrmservices/2007/crmservicewsdl.aspx - >不包含实体定义
答案 0 :(得分:7)
您使用的是错误的端点。
Dynamics CRM 2011引入了一个全新的基于WCF的Web服务。
它的端点是http://ServerName/OrganizationName/XRMServices/2011/Organization.svc
请参阅the endpoint overview
因此,您应该添加服务参考(请参阅Use the WSDL Endpoint)或使用早期/晚期绑定访问(请参阅Write Code for Microsoft Dynamics CRM (Web Services)
您在帖子中提到的端点是出于传统目的。请参阅文章Use the Microsoft Dynamics CRM 4.0 (2007) Endpoint
答案 1 :(得分:1)
我最近遇到了类似的情况。我们实际上使用的是CRM 4.0(而不是2011年),我遇到了同样的问题。我偶然发现了这篇文章:
http://www.stunnware.com/crm2/topic.aspx?id=HelpCustomizations
基本上,VS中的Web服务重新启动和刷新修复了该问题。看起来CRM并不经常构建这些Web服务(这是有道理的)。