技术开发 频道

微软WP7本地数据库之Sterling编程技巧

  foreach (var item in contactData)

  {

  App.Database.Save(item);

  }

  }

  
public event PropertyChangedEventHandler PropertyChanged;

  
private void NotifyPropertyChanged(String propertyName)

  {

  PropertyChangedEventHandler handler
= PropertyChanged;

  
if (null != handler)

  {

  handler(this,
new PropertyChangedEventArgs(propertyName));

  }

  }

  }

  很容易看出,上面代码的关键在于方法LoadData。在这个方法中,我们首先判断这两个表GroupViewModel和ContactViewModel是否已建立。如果已经建立,我们只需要用简单的Sterling查询操作填充两个集合;否则,我们调用另一个方法_SetupData生成新表中的记录。创建记录简单地对应于创建相关类的实例。最后,我们设置全局变量IsDataLoaded的值以方便随后的判断之用。

  到目前为止,所有数据层相关编程已经完成。接下来,我们将介绍如何把Sterling集成到Windows Phone7应用程序中。

  二、把Sterling集成到WP7项目中

  现在,我们已经定义了一个Sterling数据库、两个表及相应的索引。那么,接下来我们来分析如何把Sterling数据库集成到我们的示例应用程序WP7SterlingLearning中。请注意,WP7SterlingLearning仅是一个普通的Windows Phone7应用程序,没有什么特别之处。从总体上看,关键的问题主要发生在文件App.xaml.cs中。

  1.添加所需的组件

  若要使用Sterling数据库,首先要添加使用Sterling引擎所需的组件。下面给出关键代码部分:

  列表2:添加使用Sterling引擎所需的组件的关键代码

  //省略其他引用…

  using Wintellect.Sterling;

  using WP7SterlingLearning.Database;

  namespace WP7SterlingLearning

  {

  
public partial class App : Application

  {

  
private static MainViewModel viewModel = null;

  
private static ISterlingDatabaseInstance _database = null;

  
private static SterlingEngine _engine = null;

  
private static SterlingDefaultLogger _logger = null;

  
//The MainViewModel object

  
public static MainViewModel ViewModel

  {

  
get
0
相关文章