最近("Category")
、データベーステーブルに新しいフィールドを追加しました。データベースからモデルを更新しました。クエリを実行してこのテーブルのコレクションを取得するとき、このフィールドに値を追加しようとします。現時点では、イベント保存ではありません。プログラムは、無限ループのように実行されます。デバッガーを停止するReportPropertyChanged("Category")
と、モデルデザイナーコード上にあります。コードに足を踏み入れると、それはGet
別のフィールドの部分に入り、このGet
ループでスタックします-非常に奇妙です。ソリューションをクリーンアップ/再構築し、モデルを削除して、動作を残したまま再接続しました。私は過去にこの奇妙な結果なしにフィールドを追加することに成功しました、何かアイデアはありますか?
Winforms、EF4.0。
コード行(問題の場所):
rec.Category = category
誤ってプロパティを再度変更しているイベントリスナーが存在する可能性があります。
おそらく、この回答https://stackoverflow.com/a/9005656/141022で提案されているように、生成されたコードのセッターにブレークポイントを設定して、ループを見つけてみてください。
また、VisualStudioデバッガー設定のステップオーバープロパティを切り替えます。
また、生成されたコードからDebuggerStepThroughを一時的に削除して(存在する場合)、プロパティにステップインできるかどうかを確認します。
リンクされた回答(直接関連していませんが)は、いくつかのヒントを与える可能性があります。
おそらく、コールスタックもいくつかのヒントを与えるかもしれませんが、スレッド間である場合は読むのが難しいかもしれないと思います。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加