Windows Phone本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)

这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十一篇。 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知识点。我将谈谈在windows phone mango本地数据库里怎么使用LINQ查询数据库。

1、数据库查询是什么

    在windows phone上,语言集成查询(LINQ)被用作查询数据库。LINQ常用于表示对象和实际数据之间的连接。LINQ to SQL中的查询使用和LINQ 的查询相同的语法。
    因为在LINQ to SQL查询中,对象引用是映射到数据库中的记录的。LINQ to SQL不同于其他LINQ技术执行的查询。在应用层里,一个典型的LINQ查询是在内存中执行的。包括LINQ to SQL,使用runtime的对象关系能力,每一个LINQ查询都被翻译成Transact-SQL并且直接在数据库中执行,这可以提高一个查询的性能例如从一个大的数据库中查询一些记录。
你也可以看看本系列的第二篇

2、怎么选择数据

   在接下来的示例中,利用LINQ to SQL查询,一个叫做“CountryDataContext”的DataContext对象,结果放在名字叫做“ countryList ”的Country类的IList集合。
注释:在接下来的示例里,我们将使用“ CountryDataContext”这个DataContext,这在之前的文章中有解释过。
示例1:从数据库中选择所有的Country记录
复制代码
 1 private IList<Country> GetCountries()
 2  {
 3      IList<Country> countryList = null;
 4      using (CountryDataContext context = new CountryDataContext(ConnectionString))
 5      {
 6          IQueryable<Country> query = from c in context.Countries select c;
 7          countryList = query.ToList();
 8      }
 9    
10      return countryList;
11  }
复制代码

示例2:从数据库中选择所有名字以“U”开头的country记录

复制代码
 1 private IList<Country> GetCountriesStartingWithU()
 2  {
 3      IList<Country> countryList = null;
 4      using (CountryDataContext context = new CountryDataContext(ConnectionString))
 5      {
 6          IQueryable<Country> query = 
 7              from c in context.Countries 
 8              where c.Name.StartsWith("U") 
 9              select c;
10          countryList = query.ToList();
11      }
12   
13      return countryList;
14  }
复制代码

    这篇文章我谈论了在windows phone mango使用LINQ查询数据库。请继续关注接下来的文章。

posted @ 2014-07-11 17:42  dodo-yufan  阅读(221)  评论(0编辑  收藏  举报