Jack-Leung

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

以Northwind库为例,新建LINQ TO SQL Classes,我们将表Suppliers和Products拖进新建的dbml文件设计界面。

   默认情况下,IDE自动生成的映射关系为1:N.即Cardinality属性为OneToMany即1:N。

如果我们想改为1:1则可选中表关系(图中空心实心箭头),修改Cardinality属性为OneToOne。

但是IDE会报错:Error 1 Cannot create an association "Supplier_Product". Properties do not have matching types: "SupplierID", "SupplierID".  

这个错误说明主表主键和从表的外键字段类型不一致,检查发现果然是Products表的外键字段SupplierID为可空类型而主表Suppliers的主键字段为不可空类型。

修改dbml中Products表的SupplierID的Nullable属性为False,然后修改Cardinality属性为OneToOne,成功!

posted on 2011-03-22 15:49  Jack.leung  阅读(348)  评论(0编辑  收藏  举报