c# – 尝试进行分层更新会导致错误“无法插入外键值”
我有点像DAO和SQL Server的菜鸟,当我试图将值插入两个有关系的表时,我遇到了问题.表Photos具有gpsId字段,该字段与GPSLocations表的id字段具有外键关系.我想创建一个链接到新GPSLocation的新照片条目,因此代码如下所示:
gpsRow = dataset.GPSLocations.AddGPSLocationsRow("0.0N","3.2W"); dataset.Photos.AddPhotosRow(@"c:pathfile.jpg",gpsRow); tableAdapterManager.UpdateAll(dataset); 但是,这会导致以下错误:
我正在使用SQL Server CE.我的理解是否正确,TableAdapterManager应该处理这种分层更新?我只是将这些表拖到XSD视图上,并依赖于它自动创建包装类.我是否需要更改关系的任何内容(例如,使其成为外键约束)?我注意到在某些情况下gps id是正面的,有时是负面的,这是相关的吗? 编辑: 解决方法
它只是数据集的配置.双击Visual Studio的数据集设计器中的表之间的关系,选择“两个关系和外部键约束”选项,然后在“更新规则”字段中选择“级联”选项,必须选中它.
有关该主题的一些信息在MSDN中,您可以在这里查看http://msdn.microsoft.com/en-us/library/bb629317.aspx并转到相关主题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |