LINQtoSQL не сохраняется в базу данных, но изменения отображаются в приложении

Привет всем, у меня есть приложение linq, использующее C # express2008 и sqlserver express 2005 (подключение к файлу mdf). Я следил за обычной генерацией dml и ванильным контекстом данных. Однако я создал класс репозитория для управления материалами Linq. При использовании функций выбор данных работает нормально, обновление данных работает в приложении. Но когда я проверяю данные в таблицах, ничего не меняется. Излишне говорить, что когда я закрываю приложение, также никаких изменений. Я использовал профилировщик SQL, чтобы увидеть, что было отправлено на sqlserver express, ничего не появилось.

Какие могут быть мои проблемы?


person D0cNet    schedule 25.09.2009    source источник


Ответы (3)


Вы вызываете SubmitChanges() в DataContext?

person Scott Lance    schedule 25.09.2009
comment
Да, это в моей функции Save() репозитория. - person D0cNet; 25.09.2009

Нет первичного ключа или столбцов в модели L2S, помеченных как элементы первичного ключа..?

person KristoferA    schedule 25.09.2009

Ок... нашел раствор. 1. изменена (принудительно) строка подключения по умолчанию с просмотра файла на экземпляр сервера sql (используя базу данных вместо файла) 2. Прикрепил файл к серверу sql express... и переименовал db.

Снова запустил приложение и все работает. Единственное, dml по-прежнему использует старую строку подключения, поэтому любые модификации таблиц должны выполняться в sqlserver. Это всего лишь мой быстрый патч, кто-нибудь хочет предоставить более подробное представление?

person D0cNet    schedule 25.09.2009