LINQ to SQL を使用しています。SQL Server には単純な属性テーブルが 1 つあります。この属性も主キーです。テーブル構造は次のとおりです (Visual Studio 2012 のスクリーンショット)
linq を使用して から対応するエンティティを作成しますList<string>
。
このエンティティの唯一の属性はtoken
です。をトラバースしList<string>
(これは xml ファイルから逆シリアル化されます)、Token
エンティティを作成し、そのトークン属性を List からの文字列に設定して を呼び出しますInsertOnSubmit
。
テーブルToken
にデータを入力したら、コンテキストを呼び出しSubmitChanges
ます。この時点で、一部の文字列に主キー違反があるというエラーが表示されますbla bla
。
List<string>
xml ファイル (そこから をデシリアライズしたもの) 内で、 が 1 つしかないことを何度か確認しましたbla bla
。これbla bla
を文字列から削除しようとしましたが、それを行った後、他の文字列で同じエラーが発生し、ファイルを再度確認すると、ファイル内にその文字列が1つしかありません。
string を含む要素の数をコード内でチェックしたところ、bla bla
カウントは 1 しかありませんでした。もちろんInsertOnSubmit
、すべての文字列に対してコード内で 1 回だけ呼び出すことを確認しました。したがって、「bla bla」でこの主キー違反が発生し続ける理由がわかりません。
助言がありますか??
答えてくれてありがとう