果糖网

数据类型转换 返回

SqlSugar
7 107
该叫什么 Nova 发布于5天前
悬赏:5 飞吻

public class PathModel

    {


        public string PathId { get; set; }


        public string ZoneCode { get; set; }


        public string PathType { get; set; }


        public string DeviceS { get; set; }


        public string DeviceE { get; set; }


        public string LaneS { get; set; }


        public string LaneE { get; set; }


        public List<ChildPathModel> ConveyorPathDetail { get; set; }

}


 public class Tbiz_PathConfig: BaseEntity

    {

        public Tbiz_PathConfig()

        {

            this.PathId = Guid.NewGuid().ToString();

        }


        [SugarColumn(IsPrimaryKey = true)]

        public string PathId { get; set; }


        public string ZoneCode { get; set; }


        public string PathType { get; set; }


        public string DeviceS { get; set; }


        public string DeviceE { get; set; }


        public string LaneS { get; set; }


        public string LaneE { get; set; }


        public string ConveyorPathDetail { get; set; }

}


需要把表Tbiz_PathConfig中ConveyorPathDetail查出的字段进行反序列化赋值给PathModel中的ConveyorPathDetail;

尝试过在select new PathModel{} 中进行字段进行反序列化会报错;

求合适方法

热忱回答7

  • ConveyorPathDetail  这个东西如果不是数据库对象没办法直接赋值,数据库如果是JSON对象 model要加isjson特性 会自动反序列化

    0 回复
  • Nova Nova VIP0
    5天前

    @fate stay night

    public ISugarQueryable<PathModel> QueryPathConfigView()

            {

                return base.GetClient().Queryable<Tbiz_PathConfig>().Select(item => new PathModel

                { 

                 ConveyorPathDetail = item.ConveyorPathDetail

                });      

            }

    其中后面字段的赋值就是想要反序列化赋值给model的操作,但是拉姆达不允许;

    目前赋值操作是在查出来后automapper转换;

    可以在sqlsugar中直接处理掉么

    0 回复
  • 描述清楚 这个东西具体是什么玩意儿

    0 回复
  •    public string ConveyorPathDetail { get; set; } 如果这个是json字符串的话 


        public List<ChildPathModel> ConveyorPathDetail { get; set; } 这个加上JSON标签是可以的

    0 回复
  • 文档JSON类型用法

    0 回复
  • Nova Nova VIP0
    5天前

    @fate stay night:把表中某字段序列化之后的数据映射到另一个model中的list类型的字段,比如上述表ConveyorPathDetail字段数据和PathModel中的public List<ChildPathModel> ConveyorPathDetail { get; set; }字段

    0 回复
  • @Nova:数据库存的是json字符串是可以直接用的 ,看文档JSON类型需要改viewmodel中的特性,如果不是需要手动mapper

    0 回复

学习文档