2016-05-12 4 views
0

Я создал частичный вид для сохранения электронной почты от пользователей. Частичное представление - расположение страницы находится в общей папке. когда частичный вид визуализируется внутри любого вида в папке представлений, он отлично работает. Это страница, страница контакта и т. Д. Но проблема возникает, когда я помещаю частичный вид в нижний колонтитул страницы _Layout. Частичное представление принимает электронное письмо и сохраняет данные, но при его возврате дает ошибку.MVC5 Partial View Error

Модель элемент передается в словарь типа 'System.Collections.Generic.List`1 [Test.Models.FAQ], но этот словарь требует модель элемента типа «Test.Models.Subscribes ».

Я попытался с помощью визуализации и Частичный вид

@{ Html.RenderPartial("_Sub"); } and @Html.Partial("_Sub") 

Я также пытался добавить параметры, но получит ту же ошибку.

@{ Html.RenderPartial("_Sub",ViewData.Models.Subscribe); } and @Html.Partial("_Sub", model :Model) 

Этот частичный вид не позволяет мне визуализировать другой вид, давая ту же ошибку. Представление выполняет валидацию и сохранение данных в базу данных.

Как устранить эту ошибку. Или нельзя использовать частичный вид с моделями?

+0

Проверьте этот вопрос: [link] (http://stackoverflow.com/questions/2775860/how-to-pass-model-from-a-view-to-a-partial-view) – PhillipXT

+0

Частичный вид отображает создание для приема электронной почты. Как я могу использовать данные представления для форм? –

+0

Сообщение само поясняется. Модель в главном представлении - «List » и ваша передача этого частичного, который имеет «@model Test.Models.Subscribes». Вам нужно передать экземпляр «Подписка» на частичный - например, «@ {Html.RenderPartial (« _ Sub », новые подписчики()); } ' –

ответ

1

Модель элемент передается в словарь типа 'System.Collections.Generic.List`1 [Test.Models.FAQ], но этот словарь требует модель элемента типа «Test.Models.Subscribes ».

Кажется, что вы передаете две разные модели в один строго типизированный вид, когда вы передаете частичную модель с макетом, она «встретит» другую модель из сгенерированного представления. Чтобы предотвратить попытку (например): оберните ваши модели в оболочку модели или попробуйте использовать кортеж, более подробно проверьте Multiple models in a view

+0

Благодарим вас после удаления модели с частичного просмотра. Он работал с любой проблемой. –

+0

. Создав новый экземпляр модели и передав экземпляр, вы решите проблему –