Strongly Typed View lar haqida.
Staff model = _staffRepository.Get(3);
return View(model); - view ga modelni o’zini berib yuboramiz. Keyin viewdan o’qib olamiz.
Viewda import qilib olamiz yani quyidagicha:
@model WebApp.Models.Staff
Name: @Model.FirstName shu orqali uni o’qib olamiz.
ViewModels haqida.
ViewModels view ga tegishli bo’lgan barcha ma’lumotlarni jamlovchi data structura.
HomeDetailsViewModel – viewmodel ni yaratish {controller}{action}{viewmodel}
ViewModelning ichida bizga kerakli bo’lgan barcha xossalarni yozamiz.
{
public Staff Staff { get; set; }
public string Title { get; set; }
}
Buni View da foydalanish quyidagicha bo’ladi. Birinchi controllerdan viewga quyidagicha yuboramiz:
public ViewResult Details()
{
HomeDetailsViewModel homeDetailsViewModel = new HomeDetailsViewModel()
{
Staff = _staffRepository.Get(3),
Title = "Staff Detail"
};
return View(homeDetailsViewModel);
}
Viewga Controllerdan yuborgandan keyin viewga quyidagi o’zgartirishlarni kiritamiz:
@model WebApp.ViewModels.HomeDetailsViewModel – xuddi shunaqa qilib import qilib olamiz va foydalanamiz:
@Model.Staff.FirstName
Layout View haqida.
Saytning umumiy qismini olib bitta saxifaga joyliymiz, yani _Layout.cshtml
Saytda asosan header va footer qismi har bir bo’limda bor bo’lganligi uchun ularni har bir bo’limga qo’shib yurmasdan bitta _Layout viewda saqlasak har bir bo’limda kiritib yurishimizga xojat qolmaydi.
View folderga Shared degan papka yaratamiz, ichida layout file ni create qilamiz.
Razor Layout file
Bu maxsus view hisoblanadi.
@ViewBag.Title
@RenderBody() – render bodyning o’rnida active bo’lgan view joylashadi (index,default …)
@If(IsSectionDefined(“Scripts”))
{
RenderSection(“Scripts”)
} – bu kodning manosi bazi bir viewlarda js fileni ishlatish shart emas bazi birlarida ishlatish mumkin shuni inobatga olib yozilgan, viewdan biz shu viewda js fileni ishlat yoki ishlatma deb berib ketishimiz mumkin bo’ladi.
Do'stlaringiz bilan baham: |