【发布时间】:2011-04-04 08:17:43
【问题描述】:
我正在.NET 中编写一个数据库应用程序。我的应用程序使用 LINQ 从 SQL Server 读取数据。 然后它将我的数据保存在 DataSet 中(在表中)。当用户在应用程序中执行某些操作时,数据将保存在 DataSet(在表中)中。经过一些交易后,用户可以将数据保存在数据库中(数据从数据集发送到数据库)。但是有一个问题:
例如,我在从数据库中读取的数据集中有 2 个表:银行帐户和收入交易。
- BankAccount 保存我所有的银行帐户。
- IncomeTransaction 用于将我的收入存入我的账户
- 这就是我在 IncomeTransaction 表 (IDACCOUNT) 中有一个外键的原因。
然后我将一个新帐户添加到我的帐户表(不是数据库)。之后,我将一个新的 IncomeTransaction 添加到我的 IncomeTransaction 表中。添加的 IncomeTransaction 的 IDACCOUNT 是新帐户的 ID。
到这一步为止一切正常。但是当我尝试通过 LINQ 将数据保存到数据库时,出现以下错误:
INSERT 语句与 FOREIGN KEY 约束“FK_Income_Accounts”冲突。冲突发生在数据库“HouseBudget”、表“dbo.Accounts”、列“IDAccount”中。 声明已终止。
我该如何解决这个错误?
【问题讨论】:
标签: c# .net linq visual-studio-2010