توضیحات و دانلود

ارسال داده ها را از View به Controller در ASP.Net MVC
0 0
ارسال داده ها را از View به Controller در ASP.Net MVC

در این آموزش توضیح میدهیم که چگونه می توان داده ها را از View به Controller در ASP.Net MVC 5 منتقل کرد.
این مقاله نحوه ایجاد فیلدهای فرم با استفاده از کلاس Model را توضیح می دهد و سپس داده ها را از View به Controller با استفاده از شی کلاس در ASP.Net MVC 5 منتقل می کند.

Model

در زیر یک کلاس مدل به نام PersonModel با چهار ویژگی یعنی PersonId، Name، Gender و City ایجاد کرده ایم.

public class PersonModel
   {
       /// <summary>
       /// Gets or sets PersonId.
       /// </summary>
       public int PersonId { getset; }
 
       /// <summary>
       /// Gets or sets Name.
       /// </summary>
       public string Name { getset; }
 
       /// <summary>
       /// Gets or sets Gender.
       /// </summary>
       public string Gender { getset; }
 
       /// <summary>
       /// Gets or sets City.
       /// </summary>
       public string City { getset; }
   }

Controller

سپس شما باید یک کلاسController  را به پروژه خود اضافه کنید. دو روش برای Index وجود دارد، یکی برای  عملیات GET و دیگری برای عملیات POST.
 
در روش POST یک شی از کلاس PersonModel را به عنوان پارامتر قبول می کند. مقادیر ارسال شده از فرم در داخل View از طریق این پارامتر دریافت می شود.
 
public class HomeController : Controller
    {
        // GET: Home
        public ActionResult Index()
        {
            return View();
        }
 
        [HttpPost]
        public ActionResult Index(PersonModel person)
        {
            int personId = person.PersonId;
            string name = person.Name;
            string gender = person.Gender;
            string city = person.City;
 
            return View();
        }
    }

View

گام بعدی این است که یک View برای Controller اضافه کنید و در هنگام اضافه کردن شما باید کلاس ClassModel که قبلا ایجاد شده را انتخاب کنید.

در داخل View، در خط اول، کلاس PersonModel به عنوان مدل برای View اعلام می شود.
View شامل یک فرم HTML است که با استفاده از روش Html.BeginForm با پارامترهای زیر ایجاد شده است.
ActionName - نام اکشن که در این اینجا Index است.
ControllerName - نام کنترل کننده در اینجا Home است.
FormMethod - روش فرم را یعنی GET یا POST مشخص می کند. در این مورد به POST تنظیم خواهد شد.
سه فیلد TextBox وجود دارد که برای گرفتن مقادیر برای PersonId، Name و City با استفاده از روش Html.TextBoxFor ایجاد می شوند . در حالی که برای گرفتن  جنسیت، DropDownList با سه گزینه با استفاده از تابع Html.DropDownListFor ایجاد می شود.
یک دکمه Submit در انتهای فرم وجود دارد و هنگامی که دکمه روی آن کلیک می شود، فرم ارسال می شود.

@model Form_Post_MVC.Models.PersonModel
 
@{
    Layout = null;
}
 
<!DOCTYPE html>
 
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
    <style type="text/css">
        body {
            font-familyArial;
            font-size10pt;
        }
 
        table {
            border1px solid #ccc;
            border-collapsecollapse;
            background-color#fff;
        }
 
        table th {
            background-color#B8DBFD;
            color#333;
            font-weightbold;
        }
 
        table thtable td {
            padding5px;
            border1px solid #ccc;
        }
 
        tabletable table td {
            border0px solid #ccc;
        }
 
        input[type=text]select {
            width150px;
        }
    </style>
</head>
<body>
    @using (Html.BeginForm("Index""Home"FormMethod.Post))
    {
        <table cellpadding="0" cellspacing="0">
            <tr>
                <th colspan="2" align="center">مشخصات</th>
            </tr>
            <tr>
                <td>شماره ملی: </td>
                <td>
                    @Html.TextBoxFor(m => m.PersonId)
                </td>
            </tr>
            <tr>
                <td>نام: </td>
                <td>
                    @Html.TextBoxFor(m => m.Name)
                </td>
            </tr>
            <tr>
                <td>جنسیت: </td>
                <td>
                    @Html.DropDownListFor(m => m.Gender, new List<SelectListItem>
                   { new SelectListItem{Text="مرد", Value="M"},
                     new SelectListItem{Text="زن", Value="F"}}, "انتخاب کنید")
                </td>
            </tr>
            <tr>
                <td>شهر: </td>
                <td>
                    @Html.TextBoxFor(m => m.City)
                </td>
            </tr>
            <tr>
                <td></td>
                <td><input type="submit" value="ارسال" /></td>
            </tr>
        </table>
    }
</body>
</html>


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

ارسال نظر
ارسال پیام به :