Почему удаленный список <Entity>не отражается при вызове метода SubmitChanges ()? - PullRequest
0 голосов
/ 22 февраля 2010

У меня есть, например, код:

    var list = (from item in db.Table
        select item).ToList();

[выполнять обработку, где я изменяю, добавляю, удаляю элементы в списке с помощью DX GridControl] [Убедитесь, что вставленные предметы] [Я вижу, что предметов нет в списке]

db.SubmitChanges ();

Изменения, не отражающие базу данных для удаленных элементов. Что не так?

Ответы [ 2 ]

1 голос
/ 22 февраля 2010

Вы не можете изменить список для обновления базы данных. Вы должны изменить коллекции сущностей базы данных. Например: db.Table.Remove(instance)

Редактировать: Я полагаю, что приведенный выше синтаксис только EF4. Для исходного EF вам нужно использовать DeleteOnSubmit, который является методом для вашего контейнера сущностей.

0 голосов
/ 22 февраля 2010

Применяете ли вы свои изменения методом db.SubmitChanges(); к своим данным Context? Пример из msdn:

var deleteOrderDetails =
    from details in db.OrderDetails
    where details.OrderID == 11000
    select details;

foreach (var detail in deleteOrderDetails)
{
    db.OrderDetails.DeleteOnSubmit(detail);
}

try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Provide for exceptions.
}

Вот источник: http://msdn.microsoft.com/en-us/library/bb386925.aspx

Я не уверен, что вы можете внести изменения из своего Списка в базу данных, если это то, чего вы пытаетесь достичь.

...