我们遇到更新SystemUser记录名称的问题,因为CRM然后尝试更新SystemUserId在Record1Id或Record2Id中的所有连接记录(分别更新“Record1IdName”和“Record2IdName”属性)并且错误输出SQL Server超时错误。我们在这里谈论几百万个ConnectionBase记录
据我所知,我们可以增加服务器上的OLE DB超时,但有没有办法在C#代码中以编程方式执行此操作而无需更改app / async服务器的注册表?
或者,有没有办法阻止CRM进行这些更新?
答案 0 :(得分:1)
这是命令超时问题而不是连接超时问题,执行和完成命令的默认值是30秒。
OleDbCommand
类具有CommandTimeout
属性,可以通过编程方式设置。
为什么不使用SqlClient本机ADO.NET类?
回答您的问题,为什么Crm需要更新Record1IdName
和Record2IdName
,以允许您的视图显示相关记录的名称而无需加入。这就是为什么更新需要通过WS,如果你不通过WS进行更新然后你需要知道后果是什么,我总是会通过WS更新{{1}记录等或任何启动任何工作流程的列。