调用Dynamics Crm Online XrmServiceContext会导致异常

时间:2017-05-19 12:56:25

标签: dynamics-crm dynamics-crm-online

我刚刚注册了在线365试用版。

我复制粘贴出现here的演练示例代码,并更改了App.config中的Url,用户名和密码值,以便它们具有相关值。

但是,我在调用xrm.SaveChanges()时遇到异常:

例外情况:

  

未处理的类型异常   ' Microsoft.Xrm.Sdk.SaveChangesException'发生在   Microsoft.Xrm.Sdk.dll

消息内容:

  

从另一方收到了不安全或不正确安全的故障   派对。请参阅内部FaultException以获取故障代码和详细信息。

内部异常的内容:

  

代码:{System.ServiceModel.FaultCode},消息:无效请求

堆栈追踪:

  

at Microsoft.Xrm.Sdk.Client.OrganizationServiceContext.SaveChanges(SaveChangesOptions)   选项)

     

在   Microsoft.Xrm.Sdk.Client.OrganizationServiceContext.SaveChanges()

     

在CRMSimpleConsole1.Program.Main(String [] args)中   C:\ Users \ home \ documents \ visual studio   2015 \ Projects \ CRMSimpleConsole1 \ CRMSimpleConsole1 \ Program.cs:第32行

     

在System.AppDomain._nExecuteAssembly(RuntimeAssembly程序集,   String [] args)

     

at System.AppDomain.ExecuteAssembly(String   assemblyFile,Evidence assemblySecurity,String [] args)

     

在   Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()

     

在   System.Threading.ThreadHelper.ThreadStart_Context(Object state)

     

在   System.Threading.ExecutionContext.RunInternal(执行上下文   executionContext,ContextCallback回调,对象状态,布尔值   preserveSyncCtx)

     

在   System.Threading.ExecutionContext.Run(执行上下文   executionContext,ContextCallback回调,对象状态,布尔值   preserveSyncCtx)

     

在   System.Threading.ExecutionContext.Run(执行上下文   executionContext,ContextCallback回调,对象状态)

     

在   System.Threading.ThreadHelper.ThreadStart()我也得到一个例外   调用xrm.Create()时:类型的未处理异常   ' System.ServiceModel.Security.MessageSecurityException'发生在   mscorlib.dll中

请注意,对服务的任何调用都会发生同样的情况(例如xrm.Create()

我在网上搜索过这个,人们说这是因为错误的时间同步造成的。好吧,至少在CRM设置区域,时区是正确的,所以我不知道该做什么。

2 个答案:

答案 0 :(得分:2)

不推荐使用Xrm.Client,正如其他人所提到的,通过控制台应用程序连接的方式是CrmServiceClient,它位于Microsoft.Xrm.Tooling.Connector库中。

使用NuGet,您可以获得Microsoft.CrmSdk.XrmTooling.CoreAssembly套餐,您将参加比赛。

以下是其他一些有用的链接:

Build Windows client applications using the XRM tools

Sample: Quick start for XRM Tooling API

这是Dyn365在线的连接字符串示例:

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

答案 1 :(得分:0)

从Microsoft演练中提供的连接字符串中,您还必须

  • 删除Domain=CONTOSO
  • 添加AuthType=Office365