Zain Nabi Ответов: 1

Отображение комбинированного количества товара из нескольких филиалов


I hit a stumbling block and cannot break through.  When I add a product it can be at both branches, if for example theres 2. Now the problem arises when I want to display a product on the store front.  How do I display just one of the duplicate product but the quantity to be combined from both branches and displayed  


Что я уже пробовал:

I have a table


public class Branch
{
public int Id{get;set;}
public string BranchName{get;set;}
}









public class product
{
public int Id {get;set;}
public string Name{get;set;}
public int qty {get;set}






[ForeignKey("Branch")]
public int BranchId {get;set;}
public string branchname{get;set;}
public Branch Branch {get;set;}
}

Richard Deeming

Это выглядит как плохой дизайн. Кажется, нет никакого очевидного способа соединить продукт в одной ветви с тем же продуктом в другой ветви. Обе записи будут иметь разные идентификаторы.

Я бы предложил иметь три сущности:
Ветка: (Идентификатор, BranchName)
Продукт: (идентификационное имя)
BranchProducts: (BranchId, ProductId, Количество)

Это дает вам связь "многие ко многим" между филиалами и продуктами с дополнительным атрибутом "количество" в соединительной таблице.

1 Ответов

Рейтинг:
0

Gerry Schmitz

Запрос "продукт" по "идентификатору" (или имени, если оно уникально) и "сумме" "кол-во":

Перечислимый.Метод Sum (System.Linq) | Microsoft Docs[^]