2012-04-01 2 views
2

Я создал локальную базу данных для своего приложения Windows Phone 7, и я создал одну таблицу, используя учебник по msdn. У меня есть проблема со второй таблицей, как ее добавить? Когда я делаю другой класс с Linq, мне нужно использовать тот же класс datacontext и просто добавить еще одну таблицу? Я пробовал так много, что пытался создать его так же, как и в первой таблице, но ничего не работает, мое приложение просто падает. Пожалуйста, помогитеЛокальная база данных Windows Phone 7

ответ

1

Предполагая, что программа работает ОК с одной таблицей (так что вы знаете, что ваша строка подключения и datacontext в порядке для одной таблицы), тогда да, когда вы добавляете вторую таблицу, вам нужно написать дополнительный класс с [ Table], и ​​вам нужно добавить свойство в datacontext.

public class ATestDataContext : DataContext 
    { 
     public ATestDataContext(string connectionString) : base(connectionString) 
     { 
     } 

     public Table<FTable> FirstTable 
     { 
      get 
      { 
       return this.GetTable<FTable>(); 
      } 
     } 

     public Table<STable> SecondTable 
     { 
      get 
      { 
       return this.GetTable<STable>(); 
      } 
     } 
    } 

[Table] 
public class FTable : INotifyPropertyChanged, INotifyPropertyChanging 
{...} 

[Table] 
public class STable : INotifyPropertyChanged, INotifyPropertyChanging 
{...} 

Если вы хотите установить отношения между таблицами, например, мастер-деталь, то есть и другие вещи, которые нужно в классах. Один из лучших примеров, которые я натолкнулся, здесь: http://windowsphonegeek.com/articles/Windows-Phone-Mango-Local-Database-mapping-and-database-operations