.netcore 同时获取二个表的联合数据 EFCore联合查询 Inner Join 查询

//获取用户信息

//上下文
var dbContext = DBServerProvider.DbContext;

//设置要查询的二张表
var leftDb = dbContext.Set<Sys_User>();
var rightDb = dbContext.Set<Sys_WxUser>();

//获取二个表的联合数据
var user = await leftDb.Where(x => x.User_Id == UserContext.Current.UserId)
   .SelectMany(b => rightDb.Where(x => x.User_Id == b.User_Id), (us, wx) => new { us, wx })
   .FirstOrDefaultAsync();
//两表join Ling写法

var query = from u in oae .Users
            join p in oae.Parent on u.Id equals p,ParentId
            select new
            {
                username = u.UserName ,
                father = p.Father
            }


lamdba写法:

/*
第一个参数:join的表
第二,三参数:连接条件
第四个参数:返回值
*/

var query = oae.Users.Join(oae.Parent, a => a.Id, b => b.ParentId, (a, b) => new
            {
                username = a.UserName,
                fahter = b.Father
            }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
更换ORM框架的步骤如下: 1. 安装SqlSugar 在项目中安装SqlSugar,可以通过NuGet包管理器或者通过Visual Studio的控制台使用以下命令安装: ``` Install-Package SqlSugar ``` 2. 配置SqlSugar 在项目中添加SqlSugar的配置文件,可以在appsettings.json文件中添加以下内容: ``` "ConnectionStrings": { "DefaultConnection": "Data Source=.;Initial Catalog=MyDatabase;Integrated Security=True;MultipleActiveResultSets=True" }, "SqlSugar": { "DbType": "SqlServer", "ConnectionString": "Server=.;Database=MyDatabase;Trusted_Connection=True;", "IsAutoCloseConnection": true } ``` 3. 修改DbContext 在DbContext中修改OnConfiguring方法,以便使用SqlSugar连接数据库: ``` protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { if (!optionsBuilder.IsConfigured) { var connection = Configuration.GetConnectionString("DefaultConnection"); optionsBuilder.UseSqlServer(connection, b => b.UseRowNumberForPaging()); // 使用SqlSugar连接数据库 optionsBuilder.UseSqlSugar(new ConnectionConfig() { ConnectionString = Configuration["SqlSugar:ConnectionString"], DbType = DbType.SqlServer, IsAutoCloseConnection = true }); } } ``` 4. 修改实体类 在实体类中添加特性,以便SqlSugar能够正确识别实体类和数据库字段之间的映射关系: ``` [SugarTable("MyTable")] // 名 public class MyEntity { [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] // 主键和自增 public int Id { get; set; } [SugarColumn(ColumnName = "MyColumn")] // 列名 public string Name { get; set; } } ``` 5. 修改业务逻辑 在业务逻辑代码中使用SqlSugar的API,例如: ``` using(var db = new SqlSugarClient()) { var list = db.Queryable<MyEntity>().ToList(); } ``` 以上就是将EFcore换成SqlSugar的步骤,注意在更换ORM框架前,一定要备份好项目代码和数据数据,以防数据丢失。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值