Model Binder でフォームをポストし直すと、このエラーが発生し始めました。問題をテストするために、ポストバックをモデルの 1 つの文字列プロパティに減らしましたが、それでもオーバーフロー エラーが発生します。誰がこれを引き起こすのかを提案できますか?
UPDATE 問題は、外部キーであるモデル内のプロパティに関連しているようです。このキーを削除すると、バインドが機能します。どうすればバインディングを行い、外部キー関係を含めることができますか?
Model Binder でフォームをポストし直すと、このエラーが発生し始めました。問題をテストするために、ポストバックをモデルの 1 つの文字列プロパティに減らしましたが、それでもオーバーフロー エラーが発生します。誰がこれを引き起こすのかを提案できますか?
UPDATE 問題は、外部キーであるモデル内のプロパティに関連しているようです。このキーを削除すると、バインドが機能します。どうすればバインディングを行い、外部キー関係を含めることができますか?
これはいくつかの方法で修正できます。1つの方法は、このようなものを試すことです。
public ActionResult AddProduct([Bind(Exclude = "Category")]Product product) { }
これにより、モデル バインダーは、カテゴリ (FK プロパティ) をバインドしようとしません。これは既知の問題であり、MVC チームは RC 用に既に修正しています。
UpdateModel/TryUpdateModel および Bind 属性を追加する任意の場所に除外リストを渡すこともできます。
スタック オーバーフローは通常、無限再帰が原因です。スタック トレースを調べて、同じ関数 (または関数のグループ) が何度も表示されるかどうかを確認します。これは、再帰関数がその基本ケースに到達していないことを示しています。