Обновление таблицы с использованием EF в MVC2 - PullRequest
0 голосов
/ 20 июля 2011

Я написал SQL-запрос что-то вроде:

UPDATE Product
SET    QtyLeft = Product.QtyLeft - BookingItem.Qty
FROM   BookingItem 
JOIN   Product 
  ON   BookingItem.ProductID = Product.ID
WHERE  (BookingItem.BookingID = @bookingID)

Что я хочу сделать, так это запустить этот запрос при бронировании. StatusId имеет значение True, поэтому оно должно выглядеть следующим образом:

if(booking.StatusId == True) { //run the Query} else { do something else}

Технологии, которые я использую: MVC 2 EF 4

Отредактировано: я сделал что-то вроде:

using (ApextrackdaysEntities entities = new ApextrackdaysEntities())
{
  IBookingItems bookingItemResp = new BookingItemRepository();
  IQueryable<BookingItem> bookingItem = bookingItemResp.GetAllBookingItem(booking.ID);
  foreach (BookingItem items in bookingItem)
  {
       int productID = items.ProductID;
       IProductRepository prodResp = new ProductRepository();
       Product products = prodResp.GetProductsByID(productID);
       products.QtyLeft = products.QtyLeft - items.Qty;
       prodResp.Save();
  }
}

Я хочу знать, как я могу добиться этого с помощью EF, следует ли создать для него процедуру хранения или Linq To Sql, любые предложения или альтернативы будут высоко оценены.

...