پروژه‌ی عملی – ذخیره سازی اطلاعات فرم

آموزش ASP.NET Core

با سلام خدمت تمامی دوستان برنامه نویس ، با یکی دیگر از جلسات آموزش ASP.NET ، در خدمت شما دوستان عزیز هستم در این جلسه از آموزش ASP.NET Core قصد دارم تا نحوه ذخیره سازی اطلاعات فرم را به شما دوستان آموزش دهم.

ذخیره سازی اطلاعات فرم در ASP.NET Core

پس از ایجاد محلی برای ذخیره شده داده ها ، می‌توانیم متد اکشن Create که مسئول دریافت درخواست های Post را به صورت زیر ویرایش کنیم :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using WellComeProject.Models;

namespace WellComeProject.Controllers
{
    public class WellCome : Controller
    {
        public ViewResult Index()
        {
            ViewBag.WellCome = "سلام مهمان گرامی به جشن ما خوش آمدید";
            return View();
        }

        [HttpGet]
        public ViewResult Create()
        {
            return View();
        }

        [HttpPost]
        public ViewResult Create(GuestResponse guestResponse) 
        {
            Repository.AddResponse(guestResponse);
            return View("Thanks",guestResponse);
        }
    }
}

همانطور که در جلسه گذشته صحبت شد اطلاعات فرم دریافت شده از مرورگر، به صورت خودکار در فیلدهای شی کلاس Guest Response قرار می‌گیرند و تنها کاری که باید انجام شود ارسال این شی به پارامتر متد استاتیک AddResponse در کلاس Repository است.

عبارت آخر کد بالا ، به MVC می‌گوید که باید نمایی به نام Thanks را نمایش داده و شی GuestResponse را برای آن ارسال کنید (بنابراین این نما هم باید به GuestResponse مقید شود ) برای ایجاد این نما ، بر روی پوشه ی Views/WellCome راست کلیک کرده و پس از آن گزینه New Item را از فهرست Add را انتخاب کنید. از کادری که نمایان می‌شود MVC View Page را انتخاب کنید و نام نما را Thanks.schtml وارد کنید .کد این فایل را به صورت زیر ویرایش کنید.

@model WellComeProject.Models.GuestResponse
@{ 
    Layout = null;
}

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link href="~/lib/bootstrap/dist/css/bootstrap.css" rel="stylesheet" />
    <link href="~/css/site.css" rel="stylesheet" />
    <style>
        .container {
            margin-top: 40px;
            direction: rtl;
            width: 48%;
            line-height: 28px;
        }
    </style>
</head>
<body>
    <div class="container alert alert-info">
        <p>مهمان گرامی @Model.Name @Model.Family</p>
        @if(Model.WillAttend==true)
        {
            <p>از شما جهت شرکت در جشن بسیار متشکریم.</p>
        }
        else
        {
            <p>بسیار متاسفیم که نمی توانیم شما را در این جشن ملاقات کنیم.</p>
        }
        <a asp-action="ListGuests" class="pull-left btn btn-success">مشاهده شرکت کنندگان در جشن</a>
    </div>
</body>
</html>

این نما از کد Razor برای نمایش اطلاعات شی GuestResponse که برایش فرستاده شده ، استفاده می‌کند .
همین طور عبات model WellComeProject.Models.GuestResponse@ تعیین کننده مدلی است که نما به آن مقید است .

برای دسترسی به خاصیتی از شی ء مدل دریافت شده ، از نوشتار Model.PropertyName@ استفاده می‌شود. عبارت‌های مختلف razor را با شرح جزئیات آنها در فصل‌های آینده بررسی خواهیم کرد.

در تکه کد بالا با عبارت های شرطی if-else چک کردیم که اگر کاربر خواهان شرکت در جشن بود ( یعنی مقدار فیلد WillAttend برابر True بود) پیغام “از شما جهت شرکت در جشن بسیار متشکریم” به کاربر نمایش داده شود و اگر کاربر مقدار فیلد WillAttend را False انتخاب کرده پیغام “بسیار متاسفیم که نمی توانیم شما را در این جشن ملاقات کنیم” به او نشان داده شود.

با ایجاد نمای Thanks ، مثالی کاربری از پردازش فرم MVC را در اختیار داریم. پس از اجرای برنامه بر روی دکمه‌ی ثبت نام در جشن کلیک کنید . مقادیری در فرم وارد و پس از آن بر روی دکمه “ارسال اطلاعات فرم” کلیک نمایید ، نتیجه به صورت زیر خواهد بود.

نمایش اطلاعات فرم
نمایش اطلاعات فرم

بسیار خب ، این جلسه آموزشی هم به پایان رسید در صورتی که سوالی پیرامون مقالات آموزشی ASP.NET MVC داشتید حتما در قسمت نظرات مطرح کنید.

فیلم آموزشی asp.net core 2

آرزو ابراهیمی
بیش از 6 سال است که زمینه طراحی و توسعه سایت فعالیت می‌کنم، طراح و برنامه نویس انواع سامانه‌های تخصصی پزشکی، مناقصات، فروشگاهی و … بودم و هستم و هدفم در سایت میزفا ارائه اطلاعات بروز و ناب در زمینه طراحی سایت است. تا از این طریق بتونم تجربیات و دانسته های خودم را با تمامی علاقمندان به مباحث طراحی سایت به اشتراک بزارم .

فیلم آموزشی asp.net core 2

4 نظر

4 پاسخ

  1. سلام امکانش هست که سورس این پروژه را داشته باشم؟و اینکه اطلاعات رو بخوام توی دیتابیس بریزم و نمایش بدم چه جوریه؟

    1. با سلام در حال حاضر امکان دانلود سورس قرار داده نشده انشالله در آینده سورس پروژه ها رو برای دانلود قرار خواهیم داد .
      در آموزش Entity Framework Core ارتباط با بانک اطلاعاتی را آموزش خواهم داد .

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

حداکثر حجم فایل برای آپلود: 1 مگابایت. فایل‌های مجاز برای آپلود: عکس, ویس, ویدیو, ورد یا پی دی اف, فایل متنی, زیپ. شما می‌تونید برای بهتر پرسیدن سوالتون، عکس یا ویس یا حتی فیلم در بخش نظرات میزفا آپلود کنید. برای ضبط ویس می‌تونید از خود واتس آپ استفاده کنید و بعد اینجا آپلود کنید و برای ارسال عکس هم کافی هست اسکرین شات بگیرید. Drop file here

با موفقیت ثبت شد، میزفا از شما برای عضویت در خبرنامه هفتگی تشکر میکند.

عضویت در خبرنامه هفتگی برای دریافت:

  • فیلم و مقاله رایگان سئو
  • آموزش‌های UX ، GA و GTM
  • مقاله های تخصصی ASP.NET Core
  • اطلاع رسانی از محصولات
فیلم آموزشی asp.net core 2
ترک میزفا خوب نیست!
معرفی جامع‌ترین ابزار سئو در ایران
بالای ۱۰ هزار عضو
PHZpZGVvIHdpZHRoPSI2MDAiIGhlaWdodD0iMzUwIiBwb3N0ZXI9Imh0dHBzOi8vbWl6ZmEuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjMvMDUvcG9zdGVyLW1pemZhLXRvb2xzLXZpZGVvLW1pbi5wbmciIGNvbnRyb2xzIHByZWxvYWQ9Im5vbmUiPiANCiAgIDxzb3VyY2Ugc3JjPSJodHRwczovL21pemZhLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIzLzA1L21pemZhX3Rvb2xzXzcyMHAubXA0IiB0eXBlPSJ2aWRlby9tcDQiPg0KPC92aWRlbz4=