请教关于ThenMapper语法问题 返回

SqlSugar 沟通中
11 691

  //第二层

  await db.ThenMapperAsync(list.SelectMany(it => it.list_mx), async it =>

  {

      it.SL = await db.Queryable<A1>().Where(rw => rw.SJID == it.JDID.ToString() && rw.JDBJ ==1).CountAsync();

      it.ZSL = await db.Queryable<A2>().Where(jcx=>jcx.ID==it.ID && jcx.)  

  });

请问这个语法该怎么改写?

热忱回答11

  • fate sta fate sta VIP0
    2023/12/3

      await db.ThenMapperAsync(list.SelectMany(it => it.list_mx), async it =>

      {

         var list=await db.Queryable<A1>().Where(it=> rw.JDBJ ==1).SetContextAsync(看一下文档用法);

          it.SL =list.Count();

          it.ZSL = await db.Queryable<A2>().SetContextAsync(看一下文档用法);  

      });

    和it关联的全写在setcontext,其他写在where

    0 回复
  • bensonlz bensonlz VIP0
    2023/12/3

      await db.ThenMapperAsync(list.SelectMany(it => it.list_mx), async item=>  

      {

    var sl =await db.Queryable<A1>().Where(rw => rw.JDBJ ==1).SetContextAsync(rw =>rw.SJID, () => item.JDID, item);

      item.RWSL = sl.Count();

      });


    这个报错,未引用实例

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

     item 是不是null了,断点调一下

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

    可以加个判断

    0 回复
  • bensonlz bensonlz VIP0
    2023/12/3

    我想问rw.SJID  这个字段是从await db.Queryable<A1>()取?  还是 item里面传递过来的?

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

    SetContextAsync 左边参数是a1表右边是item

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

    item要有值才行

    0 回复
  • bensonlz bensonlz VIP0
    2023/12/3

    这个集合里面有10条数据,每一条都有一个ID,我想把这个ID传到await db.Queryable<A1>().where(it=>it.SJID==ID).Count(),请问具体我该怎么写?

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

    你先把setcontext玩懂吧,不然解释不清楚

    0 回复
  • fate sta fate sta VIP0
    2023/12/3

       var list=await db.Queryable<A1>().Where(it=> rw.JDBJ ==1).SetContextAsync(看一下文档用法);

          it.SL =list.Count();

    这个写的很清楚了

    0 回复
  • fate sta fate sta VIP0
    2023/12/4

    这个可以用导航的  it.List.Counut(x=>s.id==it.id)

    0 回复