ASP.NET MVC で、正しい型指定されたオブジェクトを使用してユーザー コントロールをレンダリングすると、不正な型エラーが発生します。
-
08-06-2019 - |
質問
次の形式のエラーが発生します。型指定されたユーザー コントロールに正しい型 (bar) のオブジェクトを渡しているにもかかわらず、「辞書に渡されたモデル項目は FooViewData 型ですが、この辞書には bar 型のモデル項目が必要です」と表示されます。
解決
@MattMitchell が言ったことは、おそらくこのエラーが表示される理由です。
知りたい場合は なぜ;これは、RenderUserControl() を使用するときに null を controlData パラメーターとして渡すと、フレームワークは代わりに現在のビュー コンテキストからユーザー コントロールにビュー データを渡そうとするためです (System.Web.Mvc の UserControlExtensions.DoRendering メソッドを参照)。
他のヒント
おそらく、ユーザー コントロールのレンダリング時に提供されたオブジェクトが実際には null であることが考えられます。
所属していません StackOverflow