0

この問題は Stack Overflow で何度も発生していることを知っています。私はそれらを見てきましたが、これはユニークであると信じています:

  • LINQ 式で.Single()orを使用していない.SingleOrDefault()
  • モデルに「Id」や「ID」などの重複がないかチェックしましたが、ありません
  • これは、Kendo UI MVC グリッド、任意のテーブル、そのようなグリッドを持つ Web サイト内の任意のページのオンロードで発生し、それぞれ独自のグリッドを持ついくつかの異なるページがあります。

いくつかの歴史がありますが、いくつかの外部キーを ID (int) から Guid に変更して、現在コード内にあるものとは異なるデータベース内のテーブルを指すようにしました。それに応じて、モデルが更新されました。また、剣道グリッドを指すビューを追加しましたが、これはビューで変更されました。しかし、元のまたは新しい SQL ビュー/C# モデルとは関係のないグリッドでさえ、影響を受けているようです。さて、このフェーズでは:

public OurDatabase(bool enableLazyLoading=true)
    : base("name=OurDBContext")
{
    Database.SetInitializer<OurDatabase>(null);
    ((IObjectContextAdapter)this).ObjectContext.ContextOptions.ProxyCreationEnabled = enableLazyLoading;
    ((IObjectContextAdapter)this).ObjectContext.ContextOptions.LazyLoadingEnabled = enableLazyLoading;
}

「シーケンスには複数の一致する要素が含まれています」というエラーが表示され続けます。そのエラーのある中央の行が強調表示されます。

データベース内の何かを変更すると、これが発生する可能性がありますか? かつては機能し、それ以来変更されていないコードが、現在は機能していません。これは非常に混乱を招きます。

4

1 に答える 1