Ошибка в Pouplating всех трейлеров "доступные" трейлеры, хранящиеся в базе данных, появляются в выпадающем меню формы заказа, поэтому я могу создать заказ - PullRequest
0 голосов
/ 19 мая 2018

Я просто хочу иметь возможность заполнить все available Trailers from the database in a dropdown menu при создании заказа.После чего я смогу изменить статус трейлера на недоступный, чтобы it does not appear in the dropdown menu anymore.Моя программа дает сбой, потому что я не знаю, как точно заполнить трейлеры в форме заказа.Я перепробовал все, что знаю. Ниже приведены некоторые из моих кодов. Предполагается, что у трейлера и ордера есть отношения один на один

public class Trailer
    {
        public string SerialNumber { get; set; }
        public string TrailerNumber { get; set; }
        public string TrailerStatus { get; set; }

        public int TrailerID { get; set; }

        //has a one to one relationship with order
        public virtual Order orderforTrailer { get; set; }

        public Trailer()
        {
            TrailerStatus = "Avaliable";
        }
    }

 public class Order
{
    public string OrderNumber { get; set; }
    public string OrderStatus { get; set; }

    public int OrderID { get; set; }
    //has a one to one relationship with Trailer
    public virtual Trailer TrailerForLoad { get; set; }

    public Order()
    {
        OrderStatus = "Available";
    }
}

    public IActionResult Add()
    {
        // passes in the list of available trailers in the order form
        IList<Trailer> trailerForLoad = context.Trailers.Include     
        (c =>c.TrailerStatus == "Avaliable").ToList();

        AddOrderViewModel addOrderViewModel = new      
        AddOrderViewModel(trailerForLoad);

        return View(addOrderViewModel);
    }
[HttpPost]
    public IActionResult Add(AddOrderViewModel addOrderViewModel)
    {
        if (ModelState.IsValid)
        {
            Order newOrder = new Order()
            {
                OrderNumber = addOrderViewModel.OrderNumber,       

                TrailerForLoad = context.Trailers.Where(x => x.TrailerID == addOrderViewModel.TrailerID).Single()

            };

            context.Orders.Add(newOrder);

            trailerSelected = context.Trailers.Where(x => x.TrailerID == addOrderViewModel.TrailerID).Single();

            trailerSelected.TrailerStatus = "Unavilable";
            context.SaveChanges();

            return Redirect("/Order");
        }

        return View(addOrderViewModel);
    }
 Trailer trailerSelected = new Trailer();

1 Ответ

0 голосов
/ 19 мая 2018

Вы не объяснили, в чем проблема.Создание выпадающего меню и отключение элемента управления - довольно простые вещи.Может быть, нанять программиста?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...