ABP升级后,大概3.6.1以后,在.net framework里面,从官方下载的Module zero模板添加角色是出现下面错误。

这个问题,算是新版apb的一点小缺憾,好像在.net core的模板里面没问题。解决方案:

public override async Task Create(CreateRoleDto input)
{
CheckCreatePermission();
var role = ObjectMapper.Map<Role>(input);
CheckErrors(await _roleManager.CreateAsync(role));
var grantedPermissions = PermissionManager
.GetAllPermissions()
.Where(p => input.Permissions.Contains(p.Name))
.ToList();
//加上下面代码
//await CurrentUnitOfWork.SaveChangesAsync();
await UnitOfWorkManager.Current.SaveChangesAsync(); //这行是后来加的不晓得拼写错误没有,有错自己修正,反正大概是这样 await _roleManager.SetGrantedPermissionsAsync(role, grantedPermissions);
return MapToEntityDto(role);
}

报错原因:因为uow是事物提交的,虽然调用了createasync,但事物未提交,数据没有保存到数据库,后面执行分配权限获取不到改角色的id,所以报错。

貌似是因为在.net core里面,执行了XX.CreateAsync()后,如果后面的代码会用到当前实体,就会自动提交事务,但.netframework里面不行,所以在分配权限之前我们要先手动savechange。

最新文章

  1. Leetcode Candy
  2. 解决IE6下png图片透明度不显示的问题
  3. oracle 10g编程
  4. js匿名函數
  5. crm 4 注释与上传附件权限
  6. Codeforces Round #228 (Div. 2) C. Fox and Box Accumulation(贪心)
  7. php 数组 array_values () array_key()
  8. 执行startx后Ubuntupassword正确进不去的问题
  9. 使用windows上 mxnet 预编译版本
  10. HDU5475
  11. 关于Eclipse导入项目jsp出现红色叉的解决办法
  12. Apache启动不成功时,用命令行检测(新手)
  13. 学习用Node.js和Elasticsearch构建搜索引擎(4): 构建Elasticsearch搜索引擎
  14. PrintDocument打印、预览、打印机设置和打印属性的方法
  15. Build step &#39;Execute shell&#39; marked build as failure解决
  16. DokuWiki 使用
  17. python IDE 集合
  18. org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security .AccessControlException: Permission denied: user=Administrator, access=WRITE, inode=&quot;hadoop&quot;: hadoop:supergroup:rwxr-xr-x
  19. Oracle SQL开发 之 Select语句完整的执行顺序
  20. JQuery事件机制

热门文章

  1. 6.Exceptions-异常(Dart中文文档)
  2. 第六周课上测试-1-ch02
  3. 04-cookies 会话跟踪技术
  4. CF97C Winning Strategy
  5. Nessus 用好的网络(比如热点)就可以正常在线更新扫描插件了
  6. MapReduce 基础学习
  7. Jmeter关联处理
  8. 如何获取c:forEach里面点击时候的值
  9. 如何判断Map中的key或value是什么类型
  10. 笔记:《机器学习训练秘籍》——吴恩达deeplearningai微信公众号推送文章