插入新相册时出现以下错误:
{System.Data.SqlClient.SqlException:
INSERT statement conflicted with COLUMN FOREIGN KEY
constraint 'FK_ChannelAlbum_Group'.
The conflict occurred in database 'Stamper', table 'Channel', column 'ID'.我不知道发生了什么,因为有时我将新专辑插入到上下文中,错误会发生,但Album表没有Channel ID列,只有Album_Channel表。此插入操作完全不会影响album_channel和channel表。为什么会有冲突。
我意识到,在创建了新相册之后,我尝试插入一个album_channel数据,出现了一个错误,所以我停止了调试器,并尝试修复这个问题。一旦我解决了这个问题,我就再一次插入一个新专辑,但它总是给我这个错误。因此,我关闭了我的visual studio,然后重新打开它,以便正常工作。
我不确定这是不是一个创建上下文的单例风格的好方法。
我编写了一个上下文作为类,这个上下文只创建了一次,以防止它创建太多次。
发布于 2009-08-09 00:35:04
没有图表很难回答。看起来您正在插入的表中有一个外键,该外键在它所引用的表中不是有效的主键。如果你不相信你有一个,那么你可以尝试检查你的关系,并可能重新生成你的L2S实体。甚至可以尝试手动插入到该表中,看看是否会得到相同的错误。
上下文包装在单例中对于web应用程序来说不是一个好主意,因为它不是线程安全的。您可以查看“工作单元”模式,或者尝试缓存上下文实例。
https://stackoverflow.com/questions/1250214
复制相似问题