• Qoshishni bosing
  • Qoshish > yangi papka
  • O’zbekiston Respublikasi Oliy va O’rta Ta’lim Vazirligi Mizro Ulug’bek nomidagi




    Download 0.58 Mb.
    bet2/4
    Sana19.09.2023
    Hajmi0.58 Mb.
    #82717
    1   2   3   4
    Bog'liq
    ASP
    Dunyoning jannati o’zbekistondir!!!, 2-sinf Tarbiya fanidan Saxiy va kamtar bo\'ling mavzuda dars ishlanma, Amaliy ish Klassik shifrlash algoritmlarini ishlash tartibini, maqola oqimli shifrlash
    Tekshirgichni qo'shish
    Solution Explorer-daKontrollerlar > Qo'shish > Controller-ni o'ng tugmasini bosing.

    Muloqot oynasida Yangi shablon elementini Qo'shish dialog oynasida MVC kontrollerini tanlang-bo'sh>Qo'shish.

    Muloqot oynasida Yangi element qo'shish dialog oynasida-MvcMovie kiriting HelloWorldController.cs va Qo'shishni bosing.
    Barcha Controllers/HelloWorldController tarkibini almashtiring.csquyidagi kod bilan:
    C # Nusxalash
    using Microsoft.AspNetCore.Mvc;
    using System.Text.Encodings.Web;


    namespace MvcMovie.Controllers;


    public class HelloWorldController : Controller
    {
    //
    // GET: /HelloWorld/
    public string Index()
    {
    return "This is my default action...";
    }
    //
    // GET: /HelloWorld/Welcome/
    public string Welcome()
    {
    return "This is the Welcome action method...";
    }
    }
    Tekshirgichdagi harbir ommaviy usul HTTP so'nggi nuqtasi sifatida chaqiriladi. Yuqoridagi misolda ikkala usul ham qatorni qaytaradi. Har bir usuldan oldingi sharhlarga e'tibor bering.
    HTTP so'nggi nuqtasi:

    • Bu veb-ilovada maqsadli URL, masalanhttps: //localhost: 5001/HelloWorld.

    • Birlashtiradi:

      • amaldagi protokol: HTTPS;

      • TCP portini o'z ichiga olgan veb-serverning tarmoq joylashuvi: localhost:5001;

      • maqsadli universal resurs kodi (URI): HelloWorld.

    Birinchi sharhda ushbuHTTP GET usuli/HelloWorld/asosiy URL manziliga /HelloWorld/ qo'shish orqali chaqirilganligi ko'rsatilgan.
    Ikkinchi sharhda ushbuHTTP GET usuli/URL manziliga /HelloWorld/Welcome/ qo'shish orqali chaqirilganligi ko'rsatilgan. Keyinchalik, ushbu qo'llanma ma'lumotlarni yangilaydigan HTTP POST usullarini yaratish uchun naqsh yaratish mexanizmidan foydalanadi HTTP POST.
    Ilovani tuzatuvchisiz ishga tushirish.
    /HelloWorldManzil satriga / HelloWorld yo'lini qo'shing. Index usuli qatorni qaytaradi.
    MVC kiruvchi URL manziliga qarab kontroller sinflarini (va ulardagi harakat usullarini) chaqiradi. Логика маршрутизации URL-адресовStandart MVC modeli tomonidan ishlatiladigan URL marshrutlash mantig'i chaqirilayotgan kodni quyidagi shakl formatiga qarab belgilaydi:
    /[Controller]/[ActionName]/[Parameters]
    Marshrutlash formati задан в dasturda berilgan. CS fayli.
    C #Nusxalash


    app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");
    Agar siz ilovaga kirganingizda URL segmentlarini ko'rsatmasangiz, Home Controller va Index usuli sukut bo'yicha o'rnatiladi, ular yuqorida ta'kidlangan shablon satrida o'rnatiladi. Oldingi URL segmentlarida:

    • URLning birinchi segmenti bajariladigan tekshirgich sinfini belgilaydi. Shuning uchun localhost: 5001/HelloWorld Controller helloWorld sinfiga mos keladi.

    • URL segmentining ikkinchi qismi sinf uchun harakat usulini belgilaydi. Shunday qilib, localhost: 5001 /HelloWorld/ Index IndexHelloworld controller sinfining Index usulini bajaradi. E'tibor bering, bu holda localhost: 5001/HelloWorld-ga o'tish kifoya va metod Index usuli sukut bo'yicha chaqiriladi. Agar chaqirilgan usulning nomi aniq ko'rsatilmagan bo'lsa, tekshirgich uchun standart Index usuli chaqiriladi.

    • URL segmentining (id) uchinchi qismida marshrut ma'lumotlari ko'rsatilgan. Ushbu qo'llanmada marshrut ma'lumotlari quyida keltirilgan.

    Quyidagi manzilga o'ting https://localhost: {PORT} / HelloWorld /Welcome.{PORT}ni port raqami bilan almashtiring.
    Metod Xush kelibsiz usuli ishga tushadi va bu ish xush kelibsiz harakat usuli qatorini qaytaradi. Ushbu URL uchun HelloWorld tekshiruvi va Welcome amal qilish usuli berilgan Welcome. URL-ning [Parameters] qismi hozircha ishlatilmagan.

    Parametr tafsilotlarini URL manzilidan tekshirgichga o'tkazish uchun kodni o'zgartiring. Masalan,/HelloWorld/Welcome?name=Rick&numtimes=4.
    Welcome Quyidagi kodda ko'rsatilgandek ikkita parametrni yoqish orqali xush kelibsiz usulini o'zgartiradi.
    C #Nusxalash
    // GET: /HelloWorld/Welcome/
    // Requires using System.Text.Encodings.Web;
    public string Welcome(string name, int numTimes = 1)
    {
    return HtmlEncoder.Default.Encode($"Hello {name}, NumTimes is: {numTimes}");
    }
    Oldingi kod:

    • Ixtiyoriy C # parametr funktsiyasidan foydalanadi numTimes, agar numtimes parametri sukut bo'yicha 1 qiymatini qabul qilmasa, uni qabul qiladi.

    • HtmlEncoder - Dan Foydalanadi. Default. Ilovani zararli ma'lumotlarni kiritishdan himoya qilish uchun Encode (masalan, JavaScript).

    • $"Salom {name}, NumTimes is: {numTimes}"da interpolatsiyalangan satrlardan foydalanadi.

    Ilovani ishga tushiring va quyidagi manzilga o'ting https://localhost: {PORT} / HelloWorld / Welcome?name=Rick&numtimes=4.{PORT}ni port raqami bilan almashtiring.
    URL manzilida name va numtimes uchun turli xil qiymatlardan foydalanishga harakat numtimes qiling. MVC modelini bog'lash tizimi avtomatik ravishda nomlangan parametrlarni so'rov satridan usul parametrlariga moslashtiradi. Qo'shimcha ma'lumot olish uchun modelni bog'lash bo'limiga qarang.

    Oldingi rasmda:

    • Parameters URL segmenti Parameters ishlatilmaydi.

    • Nameva numTimes parametrlari numTimes so'rov satriga uzatiladi.

    • Savol belgisi (?) yuqoridagi URL ajratuvchi sifatida ishlatiladi, undan keyin so'rov satri ko'rsatiladi.

    • & Belgisi "maydon-qiymat" juftlarini ajratib turadi.

    Xush kelibsiz usuliniquyidagi kod bilan almashtiring:
    C #Nusxalash
    public string Welcome(string name, int ID = 1)
    {
    return HtmlEncoder.Default.Encode($"Hello {name}, ID: {ID}");
    }
    Ilovani ishga tushiring va quyidagi URL manzilini kiriting: https://localhost: {PORT} / HelloWorld / Welcome / 3?name=Rick
    Oldingi URL manzilida:

    • URLning uchinchi segmenti id marshrut parametriga mos id keladi.

    • Xush kelibsiz usuli id Map Controller Route usulidagi URL shabloniga mos keladigan id parametrini o'z ichiga oladi.

    • Yakuniy belgi? so'rovlar satrining boshlanishini bildiradi.

    C #Nusxalash


    app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");
    Oldingi misolda:

    • URLning uchinchi segmenti id marshrut parametriga mos id keladi.

    • Xush kelibsiz usuli id Map Controller Route usulidagi URL shabloniga mos keladigan id parametrini o'z ichigaoladi.

    • Yakuniy belgi id parametrining ixtiyoriy ekanligini bildiradi.


    Views
    Ushbu qismda siz HelloWorld Controller HYPER LINK View fayllaridan foydalanish uchun Hello World Controller sinfiga o'zgartirishlar kiritasizRazor. Bu sizga HTML javoblarini yaratish jarayonini mijozga ehtiyotkorlik bilan kapsulalash imkonini beradi.
    Taqdimot shablonlari Razor yordamida yaratilgan Razor. Razorga asoslangan taqdimot shablonlari Razor:

    • fayl kengaytmasi mavjud.cshtml;

    • C#yordamida HTML chiqishini yaratishning qulay usulini amalga oshiring.

    Endi Index usuli tekshirgich sinfida xabar bilan qatorni qaytaradi. Hello World Controller sinfida HelloWorld Controller Index usulini quyidagi kod bilan almashtiring:
    C # Nusxalash
    public IActionResult Index()
    {
    return View();
    }
    Oldingi kod:

    • tekshirgichni ko'rish usulini chaqiradi;

    • HTML javobini yaratish uchun ko'rinish shablonidan foydalanadi.

    Tekshirish usullari:

    • harakat usullari deb ataladi; masalan, oldingi koddagi Index harakat usuli;

    • Odatda I ACTION RESULT yoki HYPER LINK-dan olingan sinf ActionResultstring kabi emas, balki string Action Result.

    Views papkasini o'ng tugmasini bosing Views va keyin tanlang Qo'shish > yangi papka. Jildga HelloWorld nomini bering.


    Views/HelloWorld papkasini o'ng tugmasini bosing /HelloWorld va keyin tanlang Qo'shish > yangi element.

    Download 0.58 Mb.
    1   2   3   4




    Download 0.58 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    O’zbekiston Respublikasi Oliy va O’rta Ta’lim Vazirligi Mizro Ulug’bek nomidagi

    Download 0.58 Mb.