powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновить запись с помощью l2s
2 сообщений из 2, страница 1 из 1
Обновить запись с помощью l2s
    #37498886
Фотография Cheerful Calf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
                    // order does not have assigned customer
                    // create new custumer and assign it to current order
                    Customers c = new Customers();
                    c.FirstName = this.txtFirstName.Text;
                    c.LastName = this.txtLastName.Text;
                    c.Email = this.txtEMail.Text;
                    c.Phone = this.txtPhone.Text;
                    c.Address = this.txtAddress.Text;
                    c.City = this.txtCity.Text;
                    context.Customers.InsertOnSubmit(c);
                    //тут норамально, новый клиент в базе
                    //граб АйДи оф нью кастомер
                    int newCustID = c.CustomerID;
                    //context.SubmitChanges();
                    var q = from o in context.Orders
                            where o.OrderID == orderID
                            select o;
                    foreach (Orders o in q)
                    {
                        o.CustumerID = newCustID;
                    }
                    context.SubmitChanges();
                    //тут плохо, КастомерАйди у заказа не поменялся..

Как правильно, чтоб работало?
...
Рейтинг: 0 / 0
Обновить запись с помощью l2s
    #37499042
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
                    Customers c = new Customers();
                    c.CustomerID = -1; //Временный локальный PK. После сохранения заменится на реальный из БД
                    c.FirstName = this.txtFirstName.Text;
                    c.LastName = this.txtLastName.Text;
                    c.Email = this.txtEMail.Text;
                    c.Phone = this.txtPhone.Text;
                    c.Address = this.txtAddress.Text;
                    c.City = this.txtCity.Text;
                    context.Customers.InsertOnSubmit(c);

                    var q = from o in context.Orders
                            where o.OrderID == orderID
                            select o;
                    foreach (Orders o in q)
                    {
                        o.CustumerID = -1; // тот же локальный PK, см выше
                    }
                    context.SubmitChanges();

В EF такое работает. Тут наверное тоже.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновить запись с помощью l2s
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]