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

时间:2023-03-09 08:08:23
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记录
Windows Phone本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)
 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 }
Windows Phone本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)

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

Windows Phone本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)
 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本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)

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