Является ли лучший подход типизированное или нетипизированное представление в ASP.NET MVC? - PullRequest
2 голосов
/ 26 сентября 2008

В ASP.NET MVC можно выбирать между типизированным представлением, если вы определяете в коде, какой тип данных может ожидать представление. Но также возможно не определять это и просто передавать любые виды данных для просмотра в контейнере ViewData.

Какую модель лучше бы здесь или мне смешивать в зависимости от того, о каких данных мы говорим (может быть, просто убедитесь, что данные, которые имеют решающее значение для функциональности типизированного представления, и другие данные не типизированы?)? Я не очень понимаю, почему здесь есть вариант ...

Ответы [ 3 ]

5 голосов
/ 26 сентября 2008

Я бы порекомендовал всегда использовать строго типизированные ViewData ... таким образом, у вас есть проверка времени компиляции, intellisense, вам не нужно выполнять приведение в своем представлении, а также значительно проще реорганизовать код.

3 голосов
/ 26 сентября 2008

В более ранних выпусках платформы требовалось выбирать между словарем ViewData и строго типизированной моделью представления.

Теперь вы можете смешать два. Объедините это с некоторыми новыми функциями Preview 5, такими как ModelState, валидация и автоматическое связывание с полями формы, и становится все более привлекательным использование ViewPage для главной модели в отображаемом виде.

Вы все еще можете добавить данные в словарь в конвейере контроллера и запросить их позже, используя ViewData ["key"] ... или, что еще лучше, ViewData.Get ("key") из MvcContrib .

1 голос
/ 26 сентября 2008

Я тоже думал об этом в прошлом. На моем сайте я использовал строгий тип представления, когда представление представляет собой почти 1: 1 модель класса, который вы показываете. Как и при отображении списка всех пользователей, я печатаю в Список, поэтому мне не нужно приводить данные в любое время, чтобы иметь правильный тип данных.

Ни в одном конкретном представлении я просто не указывал на наиболее «тяжелый» / используемый тип.

В формах сама форма является типом представления при возврате View (форма); ....

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