Как вставить несколько элементов в две таблицы за один раз?

#c# #sql-server #asp.net-core #e-commerce

#c# #sql-сервер #asp.net-core #электронная коммерция

Вопрос:

У меня есть одна таблица OrderDetails, другая — таблица заказов, я создаю API, в котором разработчик внешнего интерфейса будет отправлять несколько заказов. я хочу сохранить весь продукт, а также идентификатор пользователя, который заказал

Я создал две таблицы, одна из которых — Order, другая — OrderDetails, и, используя ядро Dotnet для создания API, я застрял, потому что я не знаю, как поступить после этого

 using System.Collections.Generic;

namespace WebApiProject.Models
{
    public class ServiceCategory
    {
        public int Id { get; set; }
        public string ServiceName { get; set; }
        public string ServiceDescription { get; set; }
        public string ServiceTitle { get; set; }
        public string Duration { get; set; }
        public double Rate { get; set; }
        public Service Service { get; set; }
        public ICollection<Order> Orders { get; set; }
    }
}
// Order Table Which has reference from ServiceCategory
// Fyi Servicecategory Is my product which user will be adding to cart

using System;
using System.Collections.Generic;

namespace WebApiProject.Models
{
    public class Order
    {
        public int Id { get; set; }
        public ServiceCategory ServiceCategories { get; set; }
        public int Quantity { get; set; }
        public double AmountOfProduct { get; set; }
        public double DiscountOnProduct { get; set; }
        public ICollection<OrderDetails> Orders { get; set; }
    }
}

//OrderDetails
// This is my order details table where i am going to save my user info and //order info which has been ordered
using System;
using WebApiProject.API.Models;

namespace WebApiProject.Models
{
    public class OrderDetails
    {
        public int Id { get; set; }
        public User User { get; set; }
        public Order Order { get; set; }
        public DateTime DateOfPurchase { get; set; }
        public int TotalAmount { get; set; }
    }
}
 

Теперь у меня проблема в том, что я создал модель и запустил миграцию, теперь я не знаю, как использовать это в репозитории или как я создам для этого DTO, который я могу использовать при тестировании через postman

Пожалуйста, помогите, любая помощь будет оценена

Комментарии:

1. Кстати, что вы пробовали? опубликуйте это здесь

2. Я упоминал, что я застрял, потому что я не знаю, как действовать дальше после создания моделей и добавления миграций, которые я не продолжил, мне нужно знать, как реализовать эту функцию

3. Итак, во-первых: я думаю, что ваши таблицы немного неправильные. Если вы думаете, как обычная корзина для покупок: Order содержит один или несколько Products , поскольку вы не знаете, сколько продуктов может быть в заказе, вам нужна другая таблица для хранения: Product и Order (часто в виде составного PK / FK). Ваша OrderDetails страница — это одна. Вам нужно добавить в него продукт. Затем вы можете начать писать API для него.

4. В Интернете есть несколько руководств по приложениям shop carts .. например, вы можете посмотреть приложение Music Store: github.com/aspnet/AspNetCore/tree/master/src/MusicStore/samples /. … Это слишком широкий вопрос, и мы не можем в принципе научить вас всему, что здесь задействовано.