База данных SQL Compact 4.0 не хранит данные?

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

Когда я выполняю метод Insert TableAdapter, он, кажется, вставляет данные в таблицу, потому что, когда я Fill DataTable после вставки, там есть 1 запись, однако, когда я перезапускаю приложение, данных больше нет.

Даже после вставки, когда я запрашиваю таблицу через Server Explorer, все равно нет данных. Упускаю ли я что-то важное, потому что, кажется, не могу найти, что мне следует делать что-то еще.

При запуске приложения

private void MainForm_Load(object sender, EventArgs e)
{
        personsTA.Fill(ds.Persons);   //ds.Persons.Count is 0;
        MyInsert();
}

private void MyInsert()
{
   personsTA.Insert(<all the params>);  //This returns 1
   //ds.Persons.Count still returns 0
   personsTA.Fill(ds.Persons);         //ds.Persons.Count now returns 1;
}

Но когда я перезапускаю приложение, Fill снова возвращает 0. Должен ли я как-то зафиксировать данные или что-то в этом роде? Есть ли настройка, которую мне нужно изменить?

Спасибо


person Jaques    schedule 26.02.2015    source источник
comment
Как выглядит ваша строка подключения? Дикое предположение: когда вы тестируете свое приложение, создается копия sdf и помещается в каталог приложения (например, bin\Release или bin\Debug). Вы вносите туда изменения, но с помощью проводника сервера вы все еще смотрите на исходный (пустой) sdf.   -  person Corak    schedule 26.02.2015
comment
Да, но он настроен на Копировать, только если новее. Я изменил его на «Не копировать сейчас», отредактировал app.config и указал на базу данных в каталоге решения. Опубликуйте ответ, и я дам вам кредит :) Спасибо   -  person Jaques    schedule 26.02.2015
comment
Посмотреть решение в этой этой теме .   -  person Filipe Baumeister    schedule 10.04.2017