首页 > 代码库 > Dynamics CRM用户创建后自动添加到团队报错
Dynamics CRM用户创建后自动添加到团队报错
前两天在实现一项需求——用户创建后自动添加到一个叫做“全体员工”的团队的时候,遇到了一个奇怪的错误,CRM的错误日志只有一句简单的“Generic SQL error.”。一般遇到这个错误处理都非比较棘手,因为已经不是应用层出现的,一般都出现在数据库层面了。
这样简单的提示肯定没法发现问题,于是找遍了操作系统的日志查看器、sql server的错误日志,没有找到有用的信息,最后不得已,只好开启tracing service,从长长的日志中发现了一句关键的提示:System.Data.SqlClient.SqlException: 不能在具有唯一索引“cndx_SystemUserPrincipals”的对象“dbo.SystemUserPrincipals”中插入重复键的行。重复键值为 (e5318580-6476-e711-80f9-a3bb6ffaa102, b6a6f70a-ed6c-e711-80f9-a3bb6ffaa102)。从字面上来看是因为dbo.SystemUserPrincipals已经存在关于这个用户和这个团队的记录了,但这个用户明明是新建的,按道理来说不应该出现在这个表中的,所以通过提示并不能了解到具体是什么原因导致错误,于是把这个作为关键字进行搜索,最终找到国外的社区中有人遇到的同样情况,推荐造成这个错误的原因应该是SystemUser的POSTOPERATION事件触发时系统并没有全部完成创建操作导致的,只需要把原来的插件改为异步执行即可。
Dynamics CRM用户创建后自动添加到团队报错
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。