abp vnext 通用仓储 实现多表查询,实现join查询 电脑版发表于:2022/9/22 16:49 **abp vnext 中实现多表查询和join,可以直接通过通用仓储来** 例子如下: ``` public async void TestJoin() { var queryable = (from fileManager in await _fileManagerRepository.GetQueryableAsync() join fileType in await _fileTypeRepository.GetQueryableAsync() on fileManager.FileTypeId equals fileType.Id select new { fileName = fileManager.FileName, fileTypeName = fileType.FileTypeName }); var reuslt = queryable.ToList(); } ``` 这个和直接使用原生ef实现join其实是一个意思,原生ef通过上下文点出来的实体是一个DbSet: ![](https://img.tnblog.net/arcimg/aojiancc2/e8ba8602c4a04815b37363d4120f9a14.png) 而DbSet其实本身也是IQueryable,所以通过GetQueryableAsync()获取到实体的IQueryable对象当然也可以直接join了 ![](https://img.tnblog.net/arcimg/aojiancc2/3438c88930ed413eac2627f55d3d1bef.png)