Запустите приложение и перейдите в браузере по ссылке https://localhost:5001/Home/RazorSyntax
Configure класса Startup в конвейер HTTP добавляется вызов UseDeveloperExceptionPage, если средой является Development. Результаты работы этого метода показаны на рис. 31.1.Страница исключений для разработчиков предоставляет обширную информацию для отладки приложения, в числе которой низкоуровневые детали исключения, укомплектованные трассировкой стека. Теперь закомментируйте приведенную ниже строку в методе Configure
if (env.IsDevelopment)
{
// app.UseDeveloperExceptionPage;
app.UseExceptionHandler("/Home/Error");
...
}
Снова запустив приложение и перейдя по ссылке http://localhost:5001/Home/RazorSyntax
На заметку!
Во всех примерах URL в этой главе применяется веб-сервер Kestrel и порт 5001. Если вы имеете дело с Visual Studio и веб-сервером IIS Express, тогда используйте URL из профиля для IIS в файлеlaunchsettings.json.Стандартный обработчик ошибок выполняет перенаправление ошибок методу действия Error
HomeController. Не забудьте восстановить применение страницы исключений для разработчиков в методе Configure:if (env.IsDevelopment)
{
app.UseDeveloperExceptionPage;
...
}
Дополнительные сведения о настройке обработки ошибок и доступных вариантах ищите в документации по ссылке https://docs.microsoft.com/ru-ru/aspnet/core/fundamentals/error-handling
Механизм визуализации и синтаксис Razor
Механизм визуализации Razor задумывался как усовершенствование механизма визуализации Web Forms и использует Razor в качестве основного языка. Razor — это код серверной стороны, который встраивается в представление, базируется на C# и избавляет от многих неудобств, присущих механизму визуализации Web Forms. Встраивание Razor в HTML и CSS приводит к тому, что код становится намного чище и лучше для восприятия, чем в случае, когда применяется синтаксис механизма визуализации Web Forms.
Первым делом добавьте новое представление, щелкнув правой кнопкой мыши на имени каталога Views\Home
AutoLot.Mvc и выбрав в контекстном меню пункт Add?New Item (Добавить?Новый элемент). В открывшемся диалоговом окне Add New Item — AutoLot.Mvc (Добавить новый элемент — AutoLot.Mvc) выберите шаблон Razor View — Empty (Представление Razor — Пустое) и назначьте представлению имя RazorSyntax.cshtml.На заметку!
Контекстное меню, открывшееся в результате щелчка правой кнопкой мыши наViews\Home, содержит также пункт Add?View (Добавить?Представление). Тем не менее, его выбор приводит к переходу в то же самое диалоговое окно Add New Item.Представления Razor, как правило, строго типизированы с использованием директивы @model
m в нижнем регистре). Измените тип нового представления на сущность Car, добавив в начало файла представления такой код:@model AutoLot.Models.Entities.Car
Поместите в верхнюю часть страницы дескриптор <hl
Razor Syntax
Блоки операторов Razor открываются с помощью символа @
foreach), либо заключаются в фигурные скобки, как демонстрируется в следующих примерах:@for (var i = 0; i < 15; i++)
{
// Делать что-то.
}
@{
// Блок кода.
var foo = "Foo";
var bar = "Bar";
var htmlString = "
}
Чтобы вывести значение переменной в представление, просто укажите символ @
Response.Write. Как видите, при выводе напрямую в браузер после оператора нет точки с запятой:@foo
@htmlString
@foo.@bar
Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов
Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT