“من دیگه از فردا نمیام”چیست ؟
.
.
.
.
.
.
.
.
.
.
.
جمله ای که در این روزها دانش اموزان به همدیگر قول میدهند اما ...
فرداش زودتر از همه به مدرسه میان😳😐✋️😂
***************************
یه کرم جوان کننده پوست خریدم
.
.
.
.
.
.
.
بعد چندبار استفاده بازگشتم به ۱۸سالگی
از حالا استرس کنکور دارم! 😐😂
*************************
یکی از معضلات بچگیم این بود که
چرا من نمی تونم مثل شخصیت های کارتون
.
.
.
که اشکاشون به دو طرف پرت میشد گریه کنم !😐😁😁
****************************
نحوه ساخت کنترلر در MVC
ابتدا پروژه ای از نوع MVC ایجاد کنید سپس بر روی پوشه ی کنترلر کلیک راست کرده و سپس از گزینه ی Add, کنترلر را انتخاب کنید
و نامی را انتخاب کنید
به عنوان مثال ما در اینجا کنترلری با نام Default ایجاد کردیم
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace WebApplication4.Controllers { public class DefaultController : Controller { // GET: Default public ActionResult Index() { return View(); } } }
در MVC منطق برنامه در Model تعریف میشود و میتوان فیلدهای مربوط به جدول در پایگاه داده را تعریف کرد همچنین میتوان اعتبار سنجی داده ها را در مدل انجام داد
در MVC حرف M به معنای Model می باشد
برای ساخت مدل بر روی فولدر Model کلیک کنید سپس گزینه ی Add و class را انتخاب کنید
اکنون نامی را برای مدل خود قرار دهید در اینجا ما PersonalDetail را به عنوان نام انتخاب میکنیم
using System; using System.Collections.Generic;
using System.Linq; using System.Web; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace WebApplication1.Models { public class PersonalDetail { [Key] [DatabaseGenerated(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption.Identity)] public int AutoId { get; set; }
[StringLength(20, MinimumLength = 4, ErrorMessage = "Must be at least 4 characters long.")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Please write your LastName")] public string LastName { get; set; } public int Age { get; set; } [Display(Name = "Is Active?")]
public bool Active { get; set; } } }
برای تعیین کلید اصلی در جدول از صفت [Key] استفاده می کنیم
برای تعیین حداکثر طول رشته ی مجاز از صفت [StringLength] استفاده میکنیم
به ارسال چند مدل به یک View , ویو مدل می گویند
مثالی در این زمینه:
چگونه ViewModel را ایجاد و استفاده کنیم؟
ابتدا پروژه ای از نوع MVC ایجاد کنید سپس بر روی فولدر Model کلیک راست کنید و گزینه ی Add و سپس class را انتخاب کنید
بهتر است نامی معنا دار برای کلاس ویو مدل خود انتخاب کنید که نشان دهنده ی کاربرد ویو مدل باشد
پیشنهاد می شود از پسوند ViewModel در نام گذاری استفاده کنید
در اینجا ما نام PersonaldetailsFilesViewModel.cs را انتخاب می کنیم برای کلاس های PersonalDetails و Files
کد مربوط به ویو مدل:
public class PersonaldetailsFilesViewModel { // Columns from PersonalDetails table [Key] [DatabaseGenerated(System.ComponentModel.DataAnnotations.Schema.DatabaseGenera tedOption.Identity)] public int AutoId { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public int Age { get; set; } public bool Active { get; set; } // Columns from Files table public string FileName { get; set; } }
سپس کنترلری ایجاد کنید و کدهای زیر را درون آن قرار دهید:
public ActionResult ListCompleteDetails() { var listWithEmpty = (from p in db.PersonalDetails join f in db.Files on p.AutoId equals f.PersonalDetailsId into ThisList from f in ThisList.DefaultIfEmpty() select new { Active = p.Active, Age = p.Age, AutoId = p.AutoId, FileName = f.FileName, FirstName = p.FirstName, LastName = p.LastName }).ToList() .Select(x => new PersonaldetailsFilesViewModel() { Active = x.Active, Age = x.Age, AutoId = x.AutoId, FileName = x.FileName, FirstName = x.FirstName, LastName = x.LastName }); return View(listWithEmpty); }
سپس بر روی اکشن متد ListCompleteDetails کلیک راست کرده و گزینه ی Add View را انتخاب کنید
اکنون کدهای زیر را در ویو قرار دهید:
@model IEnumerable<MVCTraining5.Models.PersonaldetailsFilesViewModel> @{ ViewBag.Title = "ListCompleteDetails"; } <h2>ListCompleteDetails</h2> <p> @Html.ActionLink("Create New", "Create") </p> <table class="table"> <tr> <th> @Html.DisplayNameFor(model => model.FirstName) </th> <th> @Html.DisplayNameFor(model => model.LastName) </th> <th> @Html.DisplayNameFor(model => model.Age) </th> <th> @Html.DisplayNameFor(model => model.Active) </th> <th> @Html.DisplayNameFor(model => model.FileName) </th> <th></th> </tr> @foreach (var item in Model) { <tr> <td> @Html.DisplayFor(modelItem => item.FirstName) </td> <td> @Html.DisplayFor(modelItem => item.LastName) </td> <td> @Html.DisplayFor(modelItem => item.Age) </td> <td> @Html.DisplayFor(modelItem => item.Active) </td> <td> @Html.DisplayFor(modelItem => item.FileName) </td> <td> @Html.ActionLink("Edit", "Edit", new { id=item.AutoId }) | @Html.ActionLink("Details", "Details", new { id=item.AutoId }) | @Html.ActionLink("Delete", "Delete", new { id=item.AutoId }) </td> </tr> } </table>
حالا به اجرای پروژه میتوانید خروجی برنامه را مشاهده کنید: