定义中的list元素表示客户类同订单类的关联映射为IList类型的属性,元素的Index自元素指定了订单表orders的OrderIndex字段对应于订单的顺序,one-to-many元素则指明同Customer类具有一对多关系的类是NHOrder.Order类,还要注意的是list元素的cascade属性值为all,这表示Customer支持级联更新和删除操作,也就是说当用户删除或修改了客户对象时,客户对象对应的所有订单类也被删除或修改,通过这种客户类同订单类的聚集关系。 Xml文件定义中的Set元素标识了客户类同销售类之间的关联是用集合类IDictionary来定义的,many-to-many元素标识了两者多对多的关联。注意Set元素的cascade属性为save-update表示关联只支持级联更新,而不支持级联删除,因为客户同销售人员不是聚集关系,删除一个客户把对应的销售人员也都删除显然是不合理的。Inverse属性则表示两者的关联的反转控制的,也就是说关联关系的保存是由销售类来控制的。Laze属性置为false,表示客户类加载后,同时会将所有关联的销售类也加载进内存,如果为true,则只有当用户真正访问Customer类的Sales属性时才加载相应的数据。