Создание проекта для примера
Для этой главы мы создали новый проект Visual Studio под названием HelperMethods
, используя шаблон Basic
. В него был добавлен контроллер Home
, который показан в листинге 19-1.
Листинг 19-1: КонтроллерHome
в проектеHelperMethods
using System.Web.Mvc;
namespace HelperMethods.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Fruits = new string[] {"Apple", "Orange", "Pear"};
ViewBag.Cities = new string[] {"New York", "London", "Paris"};
string message = "This is an HTML element: <input>";
return View((object) message);
}
}
}
Мы передаем в представление пару строковых массивов через ViewBag
и устанавливаем string
в качестве объекта модели. Мы создали в папке /Views/Home
файл представления Index.cshtml
, содержимое которого вы можете увидеть в листинге 19-2. Это строго типизированное представление (типом модели является string
), для которого не используется макет.
Листинг 19-2: Содержимое файла Index.cshtml
@model string
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
Here are the fruits:
@foreach (string str in (string[])ViewBag.Fruits)
{
<b>@str </b>
}
</div>
<div>
Here are the cities:
@foreach (string str in (string[])ViewBag.Cities)
{
<b>@str </b>
}
</div>
<div>
Here is the message:
<p>@Model</p>
</div>
</body>
</html>
Чтобы увидеть, как визуализируется представление, запустите приложение. В соответствии со стандартной конфигурацией маршрутизации, которую добавляет в проект Visual Studio, корневой URL, автоматически запрошенный браузером, будет соотнесен с действием Index
контроллера Home
, как показано на рисунке 19-1.
Рисунок 19-1: Запускаем приложение
