2009-10-28 3 views
1

У меня есть около 20 таблиц, с которыми я работаю. Я могу точно обновить таблицу User, однако, когда я пытаюсь обновить таблицу Address, ничего не происходит. Я не получаю исключение, и метод выглядит так, как будто он выполняется нормально, но когда я проверяю свои данные, значения остаются неизменными.Linq to Sql Обновление не работает

Я думаю, что это связано с тем, что я переместил мою базу данных из-под сервера и на свой локальный экземпляр SQL Lite. Я изменил строки подключения в конфиге и подумал, что он позаботится о проблеме (как я уже сказал, я все же могу выбрать из всех таблиц с помощью linq). Кто-нибудь сталкивался с этим раньше или имел некоторое представление о том, что может происходить?

Редактировать 1 - Я не очень хорошо разбираюсь в перемещении баз данных с помощью linq. Я действительно знаю, что SQLMETAL, когда я его запускаю, удаляет все настройки, которые я сделал внутри моего datacatalog. Является ли просто изменение соединения в работе конфигурации или действительно ли мне нужно использовать SQLMETAL каждый раз при перемещении db (структура не изменяется)

+0

Можете ли вы проверить перед SubmitChanges(), что набор изменений включает обновление, которое вы ожидаете? –

+0

Да. Я проверил значения, и он включает изменения, которые я ожидаю. Я также изменил значение адреса непосредственно в базе данных, и он появился на моей странице, поэтому я попал в правильный экземпляр. – jimbo

ответ

0

Когда я это сделал, мне пришлось вручную модифицировать конструктор, чтобы использовать другое соединение string в файле, который Visual Studio генерирует для вашего экземпляра базы данных. У меня была такая же проблема, как и вы, и это устранило проблему для меня.

+0

Могу ли я спросить, какие изменения вы внесли? Я предполагал строку подключения для datacontext во время выполнения как для выбора, так и для обновления, и это кажется правильным. – jimbo

Смежные вопросы