最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Windows Phone 调用天气预报程序实现代码
时间:2022-06-26 00:19:03 编辑:袖梨 来源:一聚教程网
接着在CityInfoTable.cs添加命名空间。
代码如下 | 复制代码 |
using System.Data.Linq.Mapping; using System.ComponentModel; |
然后在CItyInfoTable这个数据表定义主键等属性,给出完整的CityInfoTable.cs代码
代码如下 | 复制代码 |
using System;
//Column这个是定义一个成员为表字段。如果没有这个,那么这个成员不是字段
//定义城市名称 [Column] //定义城市代码 [Column] } |
现在再定义一个数据库。工程---右键---新建类,命名为CityDataContext.cs。
添加命名空间。
using System.Data.Linq;
然后让这个类继承于DataContext。
给出CityDataContext.cs的完整代码:
代码如下 | 复制代码 |
using System;
//// 传递数据库连接字符串到DataContext基类
|
到这里,数据库算是写好了。新手肯定会有疑问,没有看到什么数据库。也没在工程里面看到什么SDF文件。
因为,我们要在程序构建的时候用代码创建数据库,由上面的连接字符串可以知道,数据库创建后放在Isolatedstorage里面,创建这个在App.xaml里面的Launching事件里面实现。
可以在这个事件里添加这样的代码创建数据库:
代码如下 | 复制代码 |
using (CityDataContext db = new CityDataContext(CityDataContext.connectionString)) if (db.DatabaseExists() == false) //创建一个数据库 db.CreateDatabase(); |
这个我们暂时不做。现在我们先添加一个城市信息的XML文件。下载:http://115.com/file/anme1scg#citycode.xml
复制这个文件。在工程上面右键--粘贴。就把这个citycode.xml文件加入到了工程上。
下来就做XML解析。用的XDocument类。这里只是简单应用了下。
我们要在App.xaml里面的Launching 事件添加代码。因为我们要在初次运行程序的时候要建立数据库,并且解析citycode.xml的数据添加到数据库里面。
要读取工程里面的文件。要用到的是Application.GetResourceStream.这个函数只能读取资源文件。那么我们要将citycode.xml文件的Building属性改为Resource。
操作方法:选择citycode.xml-----点击属性---生成操作(Building)改为Resource。
要使用XDocument类,需要添加引用。添加System.Xml.Linq。已经添加很多次引用了,那么这次就不详细说怎么操作了。
在App.xaml.cs里面添加命名空间;
代码如下 | 复制代码 |
|
添加成员函数:
代码如下 | 复制代码 |
private void CreatDB() if (db.DatabaseExists() == false) //创建一个数据库 db.CreateDatabase(); //用XDocument类解析数据 //解析数据并且存入数据库 } |
在Launching事件添加如下代码:
CreatDB();
这样,我们就能在第一次执行程序的时候,创建数据库,并且解析XML数据,把城市信息存入数据库。
那么还是测试下吧。
在MainPage的Loaded事件中测试,查询北京的数据,弹窗显示。
在Loaded事件中添加如下代码:
代码如下 | 复制代码 |
using (CityDataContext db = new CityDataContext(CityDataContext.connectionString)) |
成功!那么就把刚才添加的测试代码注释掉吧。。。
PS:调试数据库,XML解析的时候我可是相当纠结了。都是心理默念不要出错,不要出错。。。
因为出错的话,数据库是建立了。但是数据八成没有加入进去。要删除数据库,就要重启模拟器了。因为重启模拟器IsolatedStorage里面的数据就没了。但是,我的机子如果重启模拟器的话,没有个五六分钟不行。。多出错几次半小时都没了
相关文章
- 原神2.7下半活动内容介绍-原神2.7下半活动有哪些 05-13
- 崩坏星穹铁道巨星巅峰战隐藏挑战攻略 05-13
- 崩坏星穹铁道枪火时间隐藏挑战攻略 05-13
- 重返未来1999一周年庆活动奖励内容 05-13
- 崩坏星穹铁道热砂海选会场隐藏挑战提示是什么 05-13
- 崩坏星穹铁道戏梦奇站隐藏挑战攻略 05-13