.SaveChanges не применяет изменения в базе данных в рамках сущности - PullRequest
4 голосов
/ 12 мая 2011

Я пытаюсь использовать приведенный ниже код для добавления записи в таблицу 'UserAlertSubscription' в моем БД, которая просто связывает пользователей с настройками оповещений.

Проблема заключается в том, что хотя я не получаю ошибок, запись делаетне добавляются в базу данных.

Любая идея, что я делаю не так.Как видите, я попробовал ApplyAllChanges, но это не имело значения.

AlerterDataEntities alerterDataEntities = new AlerterDataEntities()

// get current user
User user = alerterDataEntities.Users.Where(u => u.UserID == 1).ToList<User>()[0];

// get selected alert configuration
AlertConfiguration alertConfiguration =
    alerterDataEntities.AlertConfigurations.Where(a => a.AlertConfigurationID == 3).ToList
        <AlertConfiguration>()[0];

UserAlertSubscription userAlertSubscription = new UserAlertSubscription
{
    User = user,
    AlertConfiguration = alertConfiguration
};

user.UserAlertSubscriptions.Add(userAlertSubscription);
//alerterDataEntities.AcceptAllChanges();
alerterDataEntities.SaveChanges();

1 Ответ

3 голосов
/ 13 мая 2011

Все исправлено - я обнаружил, что проблема заключалась в том, что база данных копировалась в выходной каталог при каждом его запуске. Таким образом, таблица, на которую я смотрел (та, которая находится в корне моего приложения), была не той, к которой он был добавлен.

Этот пост, решенный @ Jean-Lois, был тем, где я нашел решение: C # Entitity Framework SaveChanges () не работает

Чтобы решить эту проблему, я установил для базы данных «Копировать в выходной каталог» значение «Не копировать» и поместил полный путь к файлу в строку подключения к базе данных в app.config

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