что точно является данными Представления со строгим контролем типов у Asp. Сетевой MVC

Что предназначено "данными представления со строгим контролем типов" у Asp. Сетевой MVC?

Спасибо

5
задан Asad 2 February 2010 в 19:11
поделиться

3 ответа

Сильно напечатанный вид в ASP.NET MVC наследует из System.Web.mvc.viewpage и содержит модельное свойство, которое имеет тип, указанный T. Это позволяет Intellisense работать в вашем взгляды.

3
ответ дан 14 December 2019 в 13:36
поделиться

Каждый вид имеет свойство Модель . Чтобы сильно напечатать вид, нужно наследовать от некоторых ViewPage, а свойство Model становится типом T. Если вы не сильно напечатаете свой вид, то Model становится типом "Объект".

Сильный ввод модели вида имеет свои преимущества в том, что вы можете получить прямой доступ к свойствам Модели. Вы получаете интеллект и проверку компилятора, вместо того, чтобы полагаться на использование "волшебных строк" для доступа к словарю ViewData - который сломается во время выполнения, если ваша модель когда-нибудь изменится.

Например, если бы у вас была

public class Person
{
   public int Age { get; set; }
}

и вы сделали свой View сильно напечатанным в классе Person, вы смогли бы получить доступ к Model.Age из ваших шаблонов представлений. Если бы ваше представление не было сильно набрано, то Model не имело бы свойств, к которым вы могли бы получить доступ, и вам пришлось бы явным образом преобразовывать его в тип или передавать ваши данные через словарь ViewData.

Чтобы сильно набрать этот вид, просто сделайте его наследуемым от ViewPage.

2
ответ дан 14 December 2019 в 13:36
поделиться

Допустим, вам необходимо отобразить несколько оскорблений связанных данных по мнению: контактная информация, прогнозы продаж и история вызовов. Вы могли бы просто ввести их в ViewData и вытащить их и сильно вводить их с точки зрения, однако лучший подход будет создать пользовательскую модель, которая заключается в том, что касается каждого из них. Тогда вы сильно напечатаете сам вид на эту пользовательскую модель. Он играет в безопасность типа и делает кодовую помощь более интуитивно понятным среди других преимуществ, таких как тестируемость.

1
ответ дан 14 December 2019 в 13:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: