ASP.NET MVC 3.0 - Почему модель строгой типизации в Посмотреть, не происходит ли статической компиляции?

Я активно разрабатываю настольные приложения, локальные и сетевые службы, некоторые классические ASP.NET и т. Д., Поэтому я привык к статической компиляции и статическому коду. анализ. Теперь, когда я (наконец) изучаю ASP.NET MVC 3.0 , я вижу, что многие эксперты по ASP.NET MVC и опытные разработчики рекомендуют использовать строго типизированные представления в ASP.NET MVC 3.0 ( где применимо).

Я предполагаю, что «строго типизированный» означает запись (скрытую) в верхней части кода представления. Но при этом я заставляю работать только IntelliSense , статическая проверка кода не выполняется. Я могу написать все, что захочу, в операторе @model в cshtml , и он будет скомпилирован и запущен. Следовательно, Model.Anything также компилируется. Фактически, если я не набираю @model, я могу динамически использовать любую модель, которую я хочу, которая имеет «совместимые» свойства и методы.

Я привык к «строго типизированному», что означает «не компилируется», например, LINQ to все, что угодно просто не будет компилироваться, если вы не получите правильные свойства. Есть ли какая-либо другая цель для @model , кроме IntelliSense и ошибки времени выполнения , и почему она называется строгой типизацией, если на самом деле это не так?

Сильный набор текста, значения в компьютерной литературе

6
задан Peter Mortensen 6 June 2011 в 15:15
поделиться