2017年1月5日 星期四

【ASP.NET MVC】The model item passed into the dictionary is of type 'TypeA' but this dictionary requires a model item of type 'TypeB'

The model item passed into the dictionary is of type 'TypeA' but this dictionary requires a model item of type 'TypeB'

在 Html.RenderPartial(..., TypeB) 時發生
傳入此字典的模型項目為型別 'TypeA',但是此字典需要型別 'TypeB' 的模型項目。
的錯誤。

看到這個錯的時候真的是一頭霧水,因為我很肯定 RenderPartial 的第二參數是 TypeB instance,但是錯誤訊息卻說收到 TypeA (我的 ViewModel)。

結果是我傳入的是 TypeB 變數沒錯,但值是 null,它也會丟這個訊息而不是 NullPointerException;確保在 Render 前變數有賦值即可。

ref: SO

沒有留言:

張貼留言