Я пытаюсь увеличить счетчик, который хранится в БД.
Так что для этого требуется, чтобы я сделал и обновил с помощью Entity Framework 1 (EF1).
Я делаю что-то вроде этого:
CounterTBL OrderCounter = MyRepository.CounterTableDetails("ORDERID");
Booking Booking = new Booking();
Booking.BookingAdminID = User.ID;
Booking.BookingStatus = 2;
OrderCounter.CounterFLD = OrderCounter.CounterFLD + 1;
using (var ctx = new WhygoContext())
{
ctx.AddToBookings(Booking);
ctx.SaveChanges();
}
Бронирование вставлено нормально, но я ожидал, что существующая запись будет обновлена, чего не было.
Поиск в StackOverflow и в Интернете показывает, что я должен сделать что-то вроде этого:
ctx.CounterTBL.Attach (OrderCounter);
ctx.ApplyCurrentValues ("CounterTBLs", OrderCounter);
Или похожий, но моему интеллигенту это не нравится и он не строится, поэтому я предполагаю, что это только часть EF 4.
К сожалению, я застрял с EF 1. Есть ли способ сделать это.
Я довольно новичок в этом, так что, может быть, я не буду делать это правильно ...