Как используется встроенный фильтр исключения в приложении, созданного по технологии ASP.NETMVC?



ASP.NET MVC технологиясы арқылы жасалған бағдарламада кірістірілген фильтр қалай пайдаланылады
RequireHttps фильтрі
RequireHttps фильтрі HTTPS-ді қолдануға мәжбүрлейді және браузер сол қолданысқа тек https префиксімен бағыттайды. Бұл сүзгі GET сұрауларына ғана қолданылады.
OutputCache фильтрі
Бұл фильтр mvc-рамкасына әрекеттер әдісінің нәтижесін кэштеуді, нәтижесінде алынған мазмұн кейінірек қайта пайдаланыла алуға мүмкіндік береді. Кэштеу өнімділікті арттыруы мүмкін, әсіресе дерекқордан іріктеу кезінде,себебі ол үлкен уақытты талап етеді. Duration параметрін пайдалану арқылы уақытты (секундтарда) реттеуге болады:
[OutputCache (Duration=360)]
public ActionResult Index()
{
//.............
}
ValidateAntiforgeryToken фильтрі
ValidateAntiforgeryToken фильтрі әрекет әдісіне қатынасу кезінде белгілеулерді тексеру арқылы жасырын кросс-сайт сұрауларына қарсы тұру үшін жасалған. Ең жиі қолданылатын оқиға осы сүзгіні авторизациялауға жауапты әдістерге қолдану, мысалы:
[ValidateAntiForgeryToken]
public ActionResult Login(LoginModel model, string returnUrl)
{ if (ModelState.IsValid && WebSecurity.Login(model.Email, model.Password, persistCookie: model.RememberMe))
{ return RedirectToLocal(returnUrl);}
ModelState.AddModelError("", "Неверный пароль или логин");
return View(model);
}

Опишите, как используется фильтр действия в приложении, созданного по технологии ASP.NETMVC?

 ASP.NET MVC технологиясы арқылы жасалған қосымшаларда іс-әрекет фильтр қалай қолданылатынын сипаттаңыз?

Фильтрлер-MVC Framework инфраструктурасындағы сұраныстарды өңдеуге қосымша логикаларды қосады.Бұл түсінік барлық қосымша бойында функционалдылыққа қолданылады және тек бір жерде ғана орындалмайды. Фильтрлер атрибут сияқты реализацияланған, соның арқасында контроллердегі код көлемін кішірейтеді. Бұл атрибуттар барлық кластарға да,олардың жеке әдістеріне, қасиеттері мен өрістеріне қолданыла алады. Мысалы, сізде HomeController контроллер болса және сіз оған тек авторландырылған қолданушыларға ғана қолжетімді болғанын қаласаңыз, онда келесі атрибутты қолдана аламыз:

[Authorize]

Public class HomeController : Controller

{

//................................}

Фильтр типі Интерфейс Стандартты реализациясы Сипаттамасы
Іс-әрекет фильтрі IActionFilter ActionFilterAttribute Іс-әрекет әдісінің алдында немесе соңында іске қосылады.

                           

Іс-әрекет фильтрі әдетте FilterAttribute абстрактты классын іске асыратын атрибут болып табылады. Кейбір іс-әрекет фильтрі (мысалы, AuthorizeAttribute және HandleErrorAttribute) FilterAttribute класын тікелей іске асырады. Бұл фильтрлер әрқашан әрекет әдісі орындалмай тұрып шақырылады.

Басқа фильтрлер (мысалы, OutputCacheAttribute) әрекет әдісінің орындалуына дейін немесе одан кейін іс-әрекет фильтрін іске қосуға мүмкіндік беретін абстрактты класс ActionFilterAttribute-ты жүзеге асырады.

Іс-әрекет фильтрі атрибутын кез келген әрекет әдісін немесе контроллерді белгілеу үшін қолдануға болады. Егер атрибут контроллерде болса, іс-әрекет фильтрі осы контроллердің барлық әрекеттер әдістеріне қолданылады.

Келесі мысал үндестік бойынша HomeController классының орындалуын көрсетеді. Бұл мысалда HandleError атрибуты контроллерді белгілеу үшін пайдаланылады. Осылайша, фильтр контроллер әрекеттерінің екі әдісіне де қолданылады.

[HandleError]

Publicclass HomeController : Controller

{

Public ActionResult Index()

{

   ViewData["Message"] = "Welcome to ASP.NET MVC!";

return View();

}

Public ActionResult About()

{

return View();

}

}

3.17.Опишите, как используется фильтр результатов в приложении, созданного по технологии ASP.NET MVC?(ASP.NET MVC-тегі фильтрлер не үшін қолданылады?)

Фильтрлер-MVC Framework инфраструктурасындағы сұраныстарды өңдеуге қосымша логикаларды қосады.Бұл түсінік барлық қосымша бойында функционалдылыққа қолданылады және тек бір жерде ғана орындалмайды. Фильтрлер атрибут сияқты реализацияланған, соның арқасында контроллердегі код көлемін кішірейтеді. Бұл атрибуттар барлық кластарға да,олардың жеке әдістеріне, қасиеттері мен өрістеріне қолданыла алады. Мысалы, сізде HomeController контроллер болса және сіз оған тек авторландырылған қолданушыларға ғана қолжетімді болғанын қаласаңыз, онда келесі атрибутты қолдана аламыз:

[Authorize]


Дата добавления: 2018-02-15; просмотров: 328; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!