简体   繁体   中英

How to add table my join tables? ASP.NET MVC

My question is, inside my join of IDs, is it possible to add another column with an ID? This is what I am trying to do:

My Index:

var orders= db.Orders.ToList();
var colers = db.Colors.ToList();
var result = (from c in orders
             join st in colers on c.ID_Orders equals st.id into table1
             select new OrderWithColorsViewModel { order =c, colers = table1.ToList() 
}).ToList();

return View(result);

My classes:

public partial class Orders
{
    public int ID_Orders { get; set; }
    public Nullable<System.DateTime> Data_Registo { get; set; }
    public string Num_Encomenda { get; set; }
    public string Ref_Cliente { get; set; }
}

public partial class Colors
{
    public int ID_Orders { get; set; }
    public int ID_Line_Color { get; set; }
    public string Color{ get; set; }
}

public partial class Quantities
{
    public int ID_Orders { get; set; }
    public int ID_Line_Color { get; set; }
    public int quantity{ get; set; }
}

Of what I am learning right now I have this from my join:

命令

and:

line_color

But what I want (I think):

order_color-line

If i am wrong in thinking, correct me, thanks

I leave my solution here for those who need it

var result1 = (from o in order
               join c in coler
                  on o.ID_Programa equals c.ID_Programa into co
               group new { o, co } by o.ID_Programa into g
               from i in g
               select new { order = i.o, colors = i.co }).ToList();
var result2 = (from r1 in result1
               from c in r1.colors
               join q in quant
                 on new { orderId = c.ID_Programa, colorlineId = c.ID_Linha_Cor } equals new { orderId = q.ID_Programa, colorlineId = q.ID_Linha_Cor } into p1
               from p in p1
               join s in statu
                 on new { orderId = p.ID_Programa, colorlineId = p.ID_Linha_Cor } equals new { orderId = s.ID_Programa, colorlineId = s.ID_Linha_Cor } into q
               group new ColorsAndQuantities { coler = c, quant = p1.ToList(), status = q.ToList() } by c.ID_Programa).ToList();
var result = (from r1 in result1
              join m in fabric
                on r1.order.ID_Programa equals m.ID_Programa into t
                from t1 in t
              join r2 in result2
                 on t1.ID_Programa equals r2.Key
              select new OrdersColorsViewModel
              {
                  order = r1.order,
                  malhas = t1,
                  colers = r2.ToList()
              }).ToList();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM