ASP.NET MVC: возвращать различные представления в зависимости от типа объекта - PullRequest
0 голосов
/ 04 января 2011

В моем контроллере я в общем десериализую Xml.Объект, подлежащий десериализации, может в конечном итоге представлять собой любое количество различных типов.Это, конечно, не будет известно во время компиляции.Я создал несколько частичных представлений, каждое из которых строго типизировано для другого объекта, что является возможным результатом десериализации XML.

Моя проблема в том, что я пытаюсь найти хороший способ возвратаправильный взгляд.Я всегда мог включить какое-либо свойство в объекте или использовать отображение словаря Key / ViewName, чтобы получить правильное имя представления, но я надеялся на что-то более общее, чем это.

Кто-нибудь знает оспособ, которым я мог бы неявно сказать: «вернуть представление, которое напечатано на объекте, который у меня есть».?

Спасибо.

1 Ответ

0 голосов
/ 04 января 2011

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

Тем не менее, вы можете просто назвать свои представления, используя имя типа.

что-то вроде return View(xmlObject.GetType().Name + "View");

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