为应用程序提供数据支持 (DataContext)
1、建立外部数据表
下图所示的表是在 SQL2005 中生成的,使用了自关联(Hibernate) dept_id -> parent_id。
type 字段用于区别省会、城市和城区,以便进一步说明 DataTrigger 的使用方法。
友情提示:
作为示例,表中仅建立了 4 个字段,数据也换成了地名。该架构具有一定的局限性,不能描述较为复杂的层次结构数据。
例如: 不同城市中可能有同名的城区,同一种物料会使用在不同的产品上,若上述情况使用此架构,则会出现同一城区或物料出现多条记录的情况。较为科学的架构,请参考 SQL2005 中自带的示例数据库 AdventureWorks。其中 Prodution.Product 和 Production.BillOfMaterials 更好的说明了物料与产品间的关系、层次、设计更改等信息。
2、在程序中添加 LINQ to SQL 类
前提是你已经建立了一个 WPF 应用程序,这个可不能忘记哦!
a、添加新项
b、成功添加了 dbml 设计器
c、点击右侧“服务器资源管理器”,添加“数据连接”
提示: 添加完成后,新的连接信息将保存在 app.config 中,如果要修改链接名称,请在 Properties\Settings.settings 中修改,以上2个文件可以在“解决方案资源管理器”中找到。
d、展开节点,将表拖拽到 dbml 设计器左侧的空白区域,设计器将根据表结构自动生成一个类,而且关联信息也将被自动生成。
e、分别选择表、字段、关联,并在“属性”窗口中为其重命名,改变名称是为了在程序中更方便的访问数据类,不会影响程序访问数据源。
提示: 关联属性的 “父属性/子属性” 名称请分别设置为 “Parent/Children”,子属性将作为 ItemsSource 在 XAML 中被调用。
提示: 属性设置完毕并保存后,可以打开 *.designer.cs 查看自动生成的类代码。
警告: 千万不要随意修改 designer.cs 文件中的代码,否则你会的哦,切记!
此时,数据源以及在程序中用于访问数据源的 LINQ to SQL 类算是添加完成了。
下一节将介绍如何把 “数据 (Data)” 以及 “界面 (UI)” 关联起来的方法。