Гайдар Магдануров - ASP.NET MVC Framework

Здесь есть возможность читать онлайн «Гайдар Магдануров - ASP.NET MVC Framework» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Санкт-Петербург, Год выпуска: 2010, ISBN: 2010, Издательство: БХВ-Петербург, Жанр: Интернет, Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

ASP.NET MVC Framework: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «ASP.NET MVC Framework»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Рассмотрены основные принципы и возможности технологии ASP.NET MVC Framework и показаны способы ее практического использования при разработке веб-приложений. Описаны преимущества подхода разработки MVC и рассмотрена структура MVC-приложения. Приведено сравнение технологии WebForms и MVC Framework и рассмотрены вопросы их совмещения.
Описаны модель и доступ к данным (технологии LINQ, Entity Framework и др.), контроллеры, представление и интерфейс приложения, механизмы маршрутизации и Ajax-функциональность. Уделено внимание вопросам тестирования веб-приложений. Рассмотрены особенности применения ASP.NET MVC 2 в Visual Studio 2010.
Для программистов

ASP.NET MVC Framework — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «ASP.NET MVC Framework», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

MembershipUser user = mp.GetUser(userName, false);

UserData userData = new UserData()

{

Comment = user.Comment,

Email = user.Email,

IsApproved = user.IsApproved,

IsLockedOut = user.IsLockedOut

};

return Json(userData, null, Encoding.UTF8);

}

В представленном фрагменте кода для передачи набора данных о пользователе в виде JSON-данных используется единственный метод Json, которому передается набор данных. Результатом, который получит пользователь в ответ, например, на такой запрос http://localhost:5434/Admin/SelectUserData?userName=adminбудет текст в следующем формате:

{"UserId":null,"Email":"vyunev@live.ru","Comment":"","IsApproved":true, "IsLockedOut":false,"CurrentMembershipUser":null}

FileResult

Очень часто в ответ на запрос пользователя требуется вернуть не HTML-страницу или данные в формате JSON, а какой-нибудь бинарный файл. FileResult— это механизм, который как раз и позволяет возвратить файл как результат работы действия контроллера.

У FileResultесть два важных свойства, которые требуется указывать при возвращении результата действия:

contentType— свойство, которое задается через конструктор класса FileResultи не может быть изменено напрямую. ContentTypeуказывает MIME-тип содержимого передаваемого файла;

FileDownloadName— свойство, указывающее на файл, который требуется передать в ответ на запрос.

Рассмотрим использование FileResultна следующем примере. Пусть нам требуется на пользовательский запрос возвращать сопоставленный с пользователем рисунок. Реализуем эту возможность с помощью файловой системы. Для этого создадим в корне проекта папку Admin, в которой будем хранить рисунки пользователей в формате PNG с именем вида: GUID пользователя.рng. Действие GetUserImageконтроллера AdminController, которое будет возвращать изображение с помощью FileResult, представлено в следующем фрагменте:

public ActionResult GetUserImage(string userName)

{

if (string.IsNullOrEmpty(userName))

throw new HttpException(404, "Пользователь не найден");

MembershipProvider mp = Membership.Provider;

MembershipUser user = mp.GetUser(userName, false);

if (user == null)

throw new HttpException(404, "Пользователь не найден");

string userGuidString = ((Guid) user.ProviderUserKey).ToString();

string fileName = userGuidString + ".png";

return File(fileName, "image/png");

}

Обратите внимание, что для возвращения результата типа FileResultв примере используется стандартный метод контроллера File, который упрощает возврат результата в виде FileResult. Методу Fileпередается два параметра: путь к возвращаемому файлу и его MIME-тип, который в данном случае для PNG-файла равен image/png.

В MVC Framework существует еще один класс для работы с файлами — класс FileContentResult, который наследует от FileResultи позволяет возвращать данные не на основании пути к файлу, а с помощью существующего потока данных, который может генерироваться в самом действии.

RedirectResult и RedirectToRouteResult

Важным свойством MVC Framework является возможность перенаправлять запрос на другие действия контроллеров либо другие URL-адреса. Для этого в MVC встроены механизмы RedirectResultи RedirectToRouteResult, которые наследуют от ActionResultи являются допустимыми результатами работы любого действия.

RedirectResultпредназначен для того, чтобы возвратить результат пользователю в виде перенаправления на заданный адрес URL. У RedirectResultесть только одно свойство, которое инициализируется через конструктор, — Url, оно указывает строку адреса, на которую будет перенаправлен пользователь в ответ на запрос. Контроллеры MVC содержат стандартный метод Redirect, который формирует ответ в виде RedirectResult. В следующем фрагменте приведено действие, результатом которого является перенаправление пользователя на сайт http://www.asp.net/mvc/:

public ActionResult GetAspNetSite()

{

return Redirect(" http://www.asp.net/mvc/");

}

RedirectToRouteResultвыполняет схожую по смыслу с RedirectResultлогику, но перенаправление вызова RedirectToRouteResultпроизводится только на основании маршрутов таблицы маршрутизации. RedirectToRouteResultимеет два конструктора, с разным числом параметров, всего параметров два:

routeName— указывает наименование маршрута, на который нужно выполнить перенаправление запроса;

routeValues— указывает набор значений параметров маршрута типа RouteValueDictionary, с помощью которых производится поиск маршрута и выполняется перенаправление.

Для упрощения работы с RedirectToRouteResultмеханизм MVC реализует для контроллеров, наряду с методами RedirectToRoute, набор стандартных методов RedirectToAction, которые призваны облегчить формирование перенаправления вызова на другие действия или контроллеры. Например, следующий фрагмент кода перенаправляет вызов из текущего действия в действие Indexтекущего контроллера:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «ASP.NET MVC Framework»

Представляем Вашему вниманию похожие книги на «ASP.NET MVC Framework» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «ASP.NET MVC Framework»

Обсуждение, отзывы о книге «ASP.NET MVC Framework» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x