Я пытаюсь использовать SQL Server CE на Windows Phone Mango. Вот мой DataContext
:SQL Server CE таблица не найдена ошибка
public class FooDataContext : DataContext
{
private static readonly string DB_CONNECTION_STRING = "Data Source=isostore:/foo.sdf";
// Pass the connection string to the base class.
public FooDataContext() : base(DB_CONNECTION_STRING)
{ }
// can this be a property?
public Table<Foo> Items;
public void ClearDatabase()
{
if (DatabaseExists())
{
DeleteDatabase();
}
}
public void EnsureDatabaseExists()
{
if (!DatabaseExists())
{
CreateDatabase();
SubmitChanges();
}
}
}
В конструкторе главной страницы, я называю EnsureDatabaseExists()
. Если я изменил схему, я также включить вызов ClearDatabase()
:
//fooData.ClearDatabase();
fooData.EnsureDatabaseExists();
Foo
колонны «s являются int
, double
и DateTime
. Когда я запустить приложение без ClearDatabase()
вызова, я получаю следующее сообщение об ошибке, как только я пытаюсь получить доступ fooContext.Items
:
Указанная таблица не существует. [Foo]
Что здесь происходит? Если я только что установил приложение, все будет хорошо.
Что 'SubmitChanges();' делать? Если база данных уже существует, эта строка не будет выполнена. –