Замена ASP. NET страниц входа в систему и регистрации идентификаторов модальными, но получая исключение InvalidOperationException - PullRequest
0 голосов
/ 09 января 2020

Я пытаюсь заменить вход в систему по умолчанию и зарегистрировать страницы, которые вместо этого поставляются с ASP. Идентичностью к bootstrap модалам. Я пытаюсь сделать это путем рендеринга двух частичных представлений в представлении _LoginPartial. Частичные представления содержат модалы и соответствующие идентификаторы для атрибутов data-target html. Вот вид _LoginPartial:

<li class="nav-item">
   <a class="nav-link" href="" data-toggle="modal" data-target="#loginModal">Login</a>
</li>
<li class="nav-item">
   <a class="nav-link" href="" data-toggle="modal" data-target="#registerModal">Register</a>
</li>

<!-- Login Modal -->
<div id="login-modal-container">
    @{
        Html.RenderPartial("_LoginModalPartial");
    }
</div>

<!-- Sign up Modal -->
<div id="register-modal-container">
    @{
        Html.RenderPartial("_RegisterModalPartial");
    }
</div>

Частичные виды, которые я отображаю, используют разные модели видов, то есть @model LoginViewModel & @model RegisterViewModel. Проблема в том, что всякий раз, когда я загружаю страницу, которая использует свою собственную модель, я получаю эту ошибку: The model item passed into the dictionary is of type 'OSM.Models.RegisterViewModel', but this dictionary requires a model item of type 'OSM.Models.LoginViewModel'. Я в замешательстве, может кто-нибудь объяснить, почему это происходит в основных терминах и любых возможных альтернативах. Спасибо.

1 Ответ

0 голосов
/ 29 января 2020

В ASP. NET MvC мы не можем передать несколько моделей из контроллера в одно представление. Есть несколько способов обойти это, которые объяснены в следующей статье: https://www.c-sharpcorner.com/UploadFile/ff2f08/multiple-models-in-single-view-in-mvc/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...