Для чего используются строго типизированные частичные представления? Каков механизм приведения в действие частичного представления?



Кроме обычных представлений метод действия может также возвращать частичные представления. Их отличительной особенностью является то, что их можно встраивать в другие обычные представления. Частичные представления могут использоваться также как и обычные, однако наиболее удобной областью их использования является рендеринг результатов AJAX-запроса.

За рендеринг частичных представлений отвечает объект PartialViewResult, который возвращается методом PartialView. Итак, определим в контроллере новое действие Partial:

public ActionResult Partial()

{

ViewBag.Message = "Это частичное представление.";

return PartialView();

}

По своему действию частичное представление похоже на обычное, только для него по умолчанию не определяется мастер-страница.

Но смысл применения частичных представлений состоит не в этом, иначе они бы никак не отличались от обычных. Поэтому теперь встроим его в какое-нибудь другое представление. Для этого нам надо применить в любом месте обычного представления хелпер Html.Partial:

@Html.Partial("Partial")

В данном случае в качестве параметра мы указываем имя частичного представления без расширения файла. Но в этом случае надо учитывать, что передать ViewBag.Message из метода Partial, как в предыдущем примере, мы уже не сможем. И если мы все таки хотим передать его в частичное представление, то нам надо будет передать его из метода контроллера, связанного с главным представлением. То есть если мы используем частичное представление в представлении Index.сshtml, то в методе Index мы можем написать:

public ActionResult Index()

{

ViewBag.Message = "Это вызов частичного представления из обычного";

return View();

}

Также как и в случае с обычными представлениями, мы можем создавать строго типизированные частичные представления, указав в шапке файла директиву @model:

@model IEnumerable<string>

<h2>Список стран</h2>

<ul>

@foreach (string t in Model)

{

<li>@t</li>

}

</ul>

Назовите основные причины использования помощников Helper. В чем заключается функциональная особенность его использования?

ASP.NET helper - Razor кодының бөлек жолдары арқылы қатынауға болатын құрамдастар. Сіз өзіңіздің көмекшіңізді .cshtml файлдарын пайдалана аласыз немесе кірістірілген ASP.NET көмекшісін пайдалана аласыз.
WebGrid helper деректерді көрсету жолын жеңілдетеді

Деректерді көрсету үшін HTML кестесін автоматты түрде орнатады.

Пішімдеуге арналған түрлі параметрлерді қолдайды.

Деректер арқылы пейджингті (бірінші, келесі, алдыңғы, соңғы) қолдайды.

Баған тақырыптарын басу арқылы сұрыптауды қолдайды.

 


Төменгі деңгейдегі helper.

 String көмекшілері C # әдістерінің әдеттегі анықтамаларына ұқсас, тек @ helper тегімен басталады. Мысалы, кітабының тізімін тізім ретінде көрсету үшін көрінісінде көмекші жасайық:

@helper BookList(IEnumerable<BookStore.Models.Book> books)

{

<ul>

@foreach (BookStore.Models.Book b in books)

{

<li>@b.Name</li>

}

</ul>

}


Бұл helper ды көрсетілімнің кез-келген жерінде анықтауға болады. Көріністегі кез-келген жерде біз оны IEnumerable <BookStore.Models.Book> нысанына өту арқылы пайдалана аламыз:

 

<h3>Список книг</h3>

@BookList(ViewBag.Books)

<!-- или если используется строго типизированное представление -->

@BookList(Model)

Что такое встроенный помощник Helper и как он взаимодействует с механизмом Razor? Назовите основные полезные свойства помощника HtmlHelper.

ASP.NET MVC-де веб-қосымшалар жасау барысында HTML хелперлер маңызды рөл атқарады. Олар программалық логиканы көрсетілімге қоюға мүмкіндік береді. Хелпер дегеніміз - статикалық класстағы MvcHtmlString типінің мәнін қайтаратын статикалық әдіс болып табылады.

Мысалы қарапайым хелпер құрайық.

namespace TestWebApp.Helpers

{

public static class MyHelper

{

public static MvcHtmlString HelloWorld()

{

TagBuilder result = new TagBuilder("h6");

result.SetInnerText("Hello,World!");

return new MvcHtmlString(result.ToString());

}}}

 

HTML алғашқы көмекші әдісінің параметрі HTMLHelper объекті болып табылады. С# компиляторында кеңейтілген әдіс қолданылғанын хабарлау үшін this кілттік сөзі қолданылады. HtmlHelper объекті төмендегі қасиеттері арқылы пайдалы мағлұматты құру кезінде ақпаратқа шектеу қоя алады:

HtmlHelper-де анықталған пайдалы қасиеттері


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

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






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