使用 LINQ 根据 ID 将 2 个不同类型的列表合并为 1 个列表

你好,所以我正在尝试将这 2 个列表合并为 1 个。


List<Entry> testing = new List<Entry>();

List<Tool> yes = new List<Tool>();


foreach (var p in _context.Tool

   .Join(_context.Entry, 

         o => o.ToolId, 

         od => od.FktoolId, 

         (o, od) => new { o.Name, od.Measure, od.RunDate, od.User, od.V }))

{

    testing.Add(new LogEntries { 

      Measure = p.Measure, 

      V = p.V, 

      RunDate = p.RunDate, 

      User = p.User});


    yes.Add(new Tool { 

      Name = p.Name });

}

所以我采用这两个列表是因为我希望一个表中的名称与另一个表连接。然后我将列表转换为 JSON


ViewBag.Testing = JsonConvert.SerializeObject(testing);

我只从测试列表中获取数据,但我希望列表中的名称“是”进入列表“测试”基于工具 ID。


那么我可以将名称推入列表中还是有办法合并它们。由于它们是不同的类型,我无法连接或相交。


所以我现在提取的数据是

[{测量:“1”,

V:3,

运行日期:“08/12/19”,

用户:“测试用户”}]

我希望它看起来像这样

[{测量:“1”,

V:3,

运行日期:“08/12/19”,

用户:“测试用户”,

名称:“龙”}]



慕标琳琳
浏览 60回答 1
1回答

吃鸡游戏

在您的 Join 语句中您已经创建了组合对象。为什么不将这些组合对象放入列表中并序列化它呢?var list = _context.Tool&nbsp; &nbsp; .Join(_context.Entry,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; o => o.ToolId,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; od => od.FktoolId,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (o, od) => new { od.Measure, od.V, od.RunDate, od.User, o.Name })&nbsp; &nbsp; .ToList();ViewBag.Testing = JsonConvert.SerializeObject(list);
打开App,查看更多内容
随时随地看视频慕课网APP