Форум программистов, компьютерный форум, киберфорум C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
1 / 1 / 2
Регистрация: 03.11.2013
Сообщений: 50
1

Как передать собственную модель в частичное представление?

15.06.2018, 08:33. Показов 2134. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день,
только начинаю разбираться с mvc, помогите, пожалуйста с такой задачей.

На основной странице есть 2 поля: вопрос (текст) и ответ (input). Для основной страницы создано представление, в которое передаётся модель IndexViewModel
C# Скопировано
1
2
3
4
5
@model MyProject.Models.IndexViewModel
@Html.DisplayFor(model => model.Question, new { htmlAttributes = new { @class = "form-control" } })
@Html.EditorFor(model => model.Answer, new { htmlAttributes = new { @class = "form-control" } })
<input type="button" value="Узнать результат" onclick="location.href='@Url.Action("DisplayResults", "Home")'" />
@Html.Partial("_ResultPartial");
После нажатия кнопки ответ проверяется и в частичное представление должен выводиться результат.
В контроллере формируется модель для результата - ResultModel.

Методы контроллера:

C# Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public ActionResult Index()
        {
             var model = new IndexViewModel()
            {
                //Question = ...
            };
            
            return View(model);
        }
 
        public ActionResult DisplayResults(string answerText)
        {
            var resultModel = new AnswerResultModel
            {                
               //ResultText = ...
            };
 
        return PartialView("_ResultPartial", resultModel);
        }
Получаю ошибку: System.InvalidOperationException: "Элемент модели, переданный в словарь, имеет тип "MyProject.Models.IndexViewModel", но для этого словаря требуется элемент модели типа "MyProject.Models.AnswerResultModel"."

Т.е. частичное представление получает модель основного представления, а не свою собственную. Как правильно отображать частичное представление в данном случае?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.06.2018, 08:33
Ответы с готовыми решениями:

Передать модель в частичное представление
Мне нужно предать в частичное представление только часть модели сама модель: public class ViewDiary { public...

Передать модель в представление и получить данные
Есть модель (пример): public class User { public string Surname { get; set; } public string...

Как добавить частичное представление в дочерние элементы
в общем не знаю как добавить частичное представление в jquery ajax в дочернии элементы то есть если делаю так то срабатывает ...

1
1 / 1 / 2
Регистрация: 03.11.2013
Сообщений: 50
21.06.2019, 06:14  [ТС] 2
Вместо
C# Скопировано
1
@Html.Partial("_ResultPartial");
в представлении должно быть:

C# Скопировано
1
@Html.Action("PartViewAction", "ControllerName", new { id = Model.Id })
в контроллере:

C# Скопировано
1
2
3
4
5
6
 [ChildActionOnly]
        public ActionResult PartViewAction(string id)
        {
             ...          
             return PartialView("_PartialView", partialViewViewModel);
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.06.2019, 06:14
Помогаю со студенческими работами здесь

Как добавить частичное представление на мастер страницу?
Есть файл, _Layout.cshtml Есть файл Create.cshtml, который добавляет пользователя в базу данных @model ProjectOne.Models.User @{ ...

Как корректно вынести часть функционала в частичное представление?
У меня есть представление (View) и соответствующая ViewModel под него. У модели есть поле Status и на странице этот статус можно менять. ...

Net Core Razor Pages как вернуть частичное представление?
Пытаюсь тут разобраться. Есть Net Core Web Application, не MVC. Как на страницу вернуть частичное представление в ответ на ajax? @page ...

Как создать собственную модель?
currencymodel.h class CurrencyModel : public QAbstractTableModel { Q_OBJECT public: CurrencyModel(QObject *parent = 0); ...

Как после серии AJAX запросов вернуть полное представление, а не частичное
Здравствуйте. Я сочиняю своего рода опросник (тест) и столкнулся с проблемой. Суть проблемы такова: 1. Формирую билет состоящий из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Сопоставление с образцом (Pattern Matching) в Python: Списки и словари
py-thonny 19.03.2025
Программисты любят, когда код говорит сам за себя. Представьте, что вы можете просмотреть структуру данных и мгновенно понять, что с ней делать — без сложных условий и вложенных проверок. Именно эту. . .
Работа с метаданными EXIF и JPEG в JavaScript
run.dev 19.03.2025
Работа с изображениями в веб-разработке нередко выходит за рамки простого отображения картинки. Современные задачи требуют глубокого понимания структуры файлов и умения манипулировать их внутренними. . .
Чеклист для Kubernetes в продакшене: Лучшие практики для SRE
Mr. Docker 19.03.2025
Когда сталкиваешься с запуском Kubernetes в продакшене, невольно задаешься вопросом: почему то, что так гладко работало в тестовой среде, вдруг начинает вызывать головную боль на боевых системах?. . .
Разработка продвинутого ИИ в Unity с использованием Behavior Graph
GameUnited 19.03.2025
В разработке игр искусственный интеллект персонажей часто становится тем элементом, который превращает хорошую игру в выдающуюся. До недавнего времени разработчикам под Unity приходилось либо писать. . .
Словари в Python: методы работы, оптимизация, сериализация
py-thonny 19.03.2025
Каждый хотя бы раз сталкивался с необходимостью хранить связанные данные, где важна не только сама информация, но и их взаимосвязь. В дебрях Python словари — это тот универсальный инструмент, который. . .
Реализация паттерна CQRS с Event Sourcing в PHP
Jason-Webb 19.03.2025
CQRS (Command Query Responsibility Segregation) — это архитектурный паттерн, который разделяет операции чтения и записи данных в приложении. Если вы столкнулись с ситуацией, когда ваше PHP-приложение. . .
std::span в C++: Подпредставлени­я и срезы
NullReferenced 18.03.2025
Если вы когда-нибудь работали с большими объемами данных в C++, то наверняка сталкивались с необходимостью манипулировать отдельными частями массивов или контейнеров. Традиционные подходы часто. . .
std::span в C++: Доступ к элементам и итерирование
NullReferenced 18.03.2025
В C++ каждый разработчик сталкивается с проблемой эффективного управления последовательностями данных. Представьте: вы работаете с массивом, передаете его в функцию, а затем в другую, и каждый раз. . .
Утечки памяти в C#
UnmanagedCoder 18.03.2025
Когда мы говорим о разработке приложений на C#, то часто успокаиваем себя мыслью, что сборщик мусора решит все наши проблемы с памятью. "Память управляется автоматически" — эта мантра прочно засела в. . .
std::span в C++: Введение в невладеющее представление
NullReferenced 18.03.2025
С появлением стандарта C++20 у нас появился новый инструмент — std::span, который представляет собой невладеющее представление для работы с последовательностями данных. std::span — это легковесный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер