我正在尝试通过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);
任何建议。
答案 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;