У меня есть два класса:
Order
int OrderId
string OrderName
List<Product> Products
Product
int ProductId
string ProductName
Order Order
У меня есть две таблицы: заказ, продукт в MS SQL DB
Я хочу показать в интерфейсе список заказов в поле со списком. При выборе заказа отображается список товаров.
У меня есть хранимая процедура, которая возвращает таблицу продуктов для заказа: GetProductByOrderId
У меня есть процедура storderd, которая возвращает таблицу заказов:
GetOrders
Как мне сопоставить эту таблицу с классом продукта?
Буду ли я делать что-то вроде этого:
Product product = new Product();
product.Name = reader["Name"]
product.Order = new Order();
product.Order.Id = reader["OrderId"];
Или я должен изменить свою модель класса, чтобы для класса Product у меня был только OrderId, и я сопоставлю модели своих классов так, чтобы они выглядели идентичными таблицам моей базы данных?
Когда я получу объекты Order, я должен создать
Order order = new Order();
order.Products = new List<Product>()
даже если мне не нужно получать продукты, тогда какой смысл иметь их в списке?
Я не вижу преимуществ правильной доменной модели, когда все, что я делаю, это задаю несколько свойств связанных сущностей?
P.S. Исходное приложение включает более 65 таблиц.