无法在本地连接到MS CRM 365?

时间:2018-09-26 09:07:17

标签: c# dynamics-crm dynamics-crm-365

我正在尝试通过C#本地连接到CRM 365,但出现错误:-

  

由于内部错误,服务器无法处理请求。有关错误的更多信息,请打开服务器上的IncludeExceptionDetailInFaults(从ServiceBehaviorAttribute或从配置行为),以便将异常信息发送回客户端,或者按照Microsoft .NET Framework SDK文档和检查服务器跟踪日志。

我的连接代码是:-

        ClientCredentials credentials = new ClientCredentials();
        credentials.UserName.UserName = ConfigurationManager.AppSettings["CRMUser"]; //I Tried with & without domain name Ex: domain\crmadmin and crmadmin
        credentials.UserName.Password = ConfigurationManager.AppSettings["CRMPassword"]; //Ex : 123456

        string CRMURL = ConfigurationManager.AppSettings["CRMURL"].ToString(); // http://domain/XRMServices/2011/Organization.svc

        OrganizationServiceProxy serviceProxy = new OrganizationServiceProxy(new Uri(CRMURL), null, credentials, null);

当我开始使用“ serviceProxy”创建记录或检索记录时,出现上述错误。 例如:serviceProxy.Create(Entity);

任何建议。

1 个答案:

答案 0 :(得分:2)

将控制台应用程序连接到D365的首选方法是使用Microsoft.Xrm.Tooling.Connector.CrmServiceClient

This article概述了各种连接字符串格式。

您的组织看起来像是本地组织,因此您可以使用集成安全性:

var connectionString = "AuthType=AD;Url=http://contoso:8080/Test;" 
var svc = new CrmServiceClient(connectionString);

或指定用户凭据:

var connectionString = "AuthType=AD;Url=http://contoso:8080/Test; Domain=CONTOSO; Username=jsmith; Password=passcode" 
var svc = new CrmServiceClient(connectionString);

请注意连接字符串中附加到URL的组织名称(在本例中为“测试”)

此外,以上代码要求:

using Microsoft.Xrm.Tooling.Connector;