【问题标题】:CRMServiceClient does not try to connect to Dynamics CRMCRMServiceClient 不尝试连接到 Dynamics CRM
【发布时间】:2017-12-19 18:45:13
【问题描述】:

使用适用于 Dynamics CRM 的最新 SDK,我正在尝试创建一个新的 CRMServiceClient([ConnectionString])。我尝试用它做任何事情,包括 WHOAMI 请求,但我无法登录到 Dynamics OrganizationServiceProxy 为空。当我运行提琴手时,甚至没有尝试与服务器通信以尝试登录。我不确定出了什么问题,因为我认为新建 CRMServiceClient 会尝试连接,因为 OrganizationServiceProxy 是 CRMServiceClient 的子对象。有人知道如何解决这个问题吗?

var temp = new CrmServiceClient(ConfigurationManager.ConnectionStrings["con‌​n"].ConnectionString‌​); 
<add name="conn" connectionString="AuthType=AD; Url=Url/DEVCRM; Username=User; Password=pass;"/> 

【问题讨论】:

  • 请分享您的代码和异常详情。根据您提供的信息,很难判断出了什么问题。
  • 您的连接字符串很可能是错误的,但您提供的信息无法帮助您
  • var temp = new CrmServiceClient(ConfigurationManager.ConnectionStrings["conn"].ConnectionString); Url/DEVCRM; Username=User; Password=pass;"/> 所以当我运行第一行代码时,OrganizationServiceProxy 为空。连接字符串也在上面。更改 URL、用户名和密码以隐藏真实信息。

标签: dynamics-crm microsoft-dynamics


【解决方案1】:

请注意,CrmServiceClient 有一个名为 IsReady 的布尔属性,这是检查它是否处于正确状态的好方法。

作为参考,以下是各种环境类型的示例连接字符串:

CRM 2016 和 Dynamics 365 在线:

<add name="dev26" connectionString="Url=https://dev26.crm.dynamics.com; Username=user@dev26.onmicrosoft.com; Password=Pass; AuthType=Office365" />

具有集成安全性的本地部署:

<add name="prod" connectionString="Url=http://myserver/AdventureWorksCycle;"/>

带有凭据的本地部署:

<add name="prod" connectionString="Url=http://myserver/AdventureWorksCycle; Domain=mydomain; Username=administrator; Password=password; AuthType=AD;"/>

CRM 2016 之前的本地 IFD:

<add name="prod" connectionString="Url=https://contoso.litware.com; Username=someone@litware.com; Password=password; AuthType=IFD;"/>

适用于 CRM 2016 及更高版本 (v8.0+) 的本地 IFD

<add name="prod" connectionString="ServiceUri=https://contoso.litware.com/contoso; Domain=contoso; Username=contoso\administrator; Password=password; AuthType=IFD; LoginPrompt=Never;" />

【讨论】:

    【解决方案2】:

    根据您的连接字符串,我建议您向其中添加域。那应该可以解决您的问题。检查以下示例:

    使用本地身份验证的命名帐户

    <add name="MyCRMServer"connectionString="AuthType=AD;Url=http://contoso:8080/Test;Domain=CONTOSO; Username=jsmith; Password=passcode" />
    

    您可以在以下文章中找到更多信息 - https://msdn.microsoft.com/en-us/library/mt608573.aspx

    【讨论】:

    • 我也用过这种格式:AuthType=AD;Url=https://[server]/DEVCRM;Domain=[Domain];Username=[user(no domain)];Password=[ pass]" 我仍然得到一个空的组织服务代理。我可以使用刚刚找到的用户名和密码登录到 URL 处的动态实例。
    • CrmServiceClient 是否在构造函数中连接到 CRM?如果是这样,Fiddler 不应该看到吗?
    【解决方案3】:

    我发现 .net 4.6.2 不能很好地与 CRM SDK 配合使用,如果您正在运行该版本的 .net 升级或降级计算机上安装的框架。

    Updating to .net 4.6.2 from .net 4.5.2 causing Object Reference Exception on ExecuteCore method within xrm sdk

    如果不是原因,请启用跟踪以获取更详细的错误消息,有关详细信息,请参阅以下文章:https://msdn.microsoft.com/en-au/library/dn689064.aspx

    【讨论】:

      猜你喜欢
      • 2018-07-28
      • 1970-01-01
      • 1970-01-01
      • 2016-02-15
      • 1970-01-01
      • 2022-12-09
      • 1970-01-01
      • 2016-12-03
      • 1970-01-01
      相关资源
      最近更新 更多