Code First در MVC – ایجاد دیتابیس

تهران آی تی / برنامــه نویــسـی / Code First در MVC – ایجاد دیتابیس

Code First در MVC – ایجاد دیتابیس

در قسمت اول آموزش Code First در MVC – ایجاد دیتابیس، قصد داریم تا دیتابیسی را به روش Code First ایجاد کنیم. در این روش ابتدا برنامه را مینویسیم یعنی توسط کلاس مدلی که ایجاد میکنیم دیتابیس ایجاد میشود. این آموزش را بهتر است با یک مثال ارائه دهیم فرض کنید قصد داریم دیتابیسی به نام MyDB ایجاد کنیم و جدولی به نام User همراه با فیلد های زیر به آن اضافه کنیم.

  • نام دیتابیس : MyDB
  • نام جدول : Tab_User
  • فیلد ها : UserId , Name , Family , Gender , MobileNumber , Email , Password , ImageName , RegisterDate , IsActive

افزودن Entity Framework

  • گام اول : از طریق manage nuget packages اقدام به افزودن Entity Framework به پروژه خود کنید. Entity Framework ورژن های محتلفی دارد حتما Entity Framework حالی را نصب کنید و به اشتباه نسخه های Core و … را نصب نکنید.
Add Entity Framework To MVC Project.jpg

Add Entity Framework To MVC Project.jpg

ایجاد Context

  • گام دوم : در پوشه مدل های خود باید کلاسی را برای Context ها ایجاد کنیم نام آن را MyDBContext قرار میدهیم و آن را از کلاس DbContext اکستند میکنیم. توجه داشته باشید که بعدا، یعنی بعد از افزودن مدل مربوط به جدول های خود باید به این کلاس برگردیم و جداول خود را در اینجا معرفی کنیم.

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;
namespace WebApplication1.Models
{
public class MyDBContext : DbContext
{
}
}

ایجاد Model

  • گام سوم : در پوشه مدل کلاس جدیدی اضافه میکنیم با نام User این کلاس قرار است مدل جدول Tab_User ما باشد.

الف – توسط دیتا انوتیشن [Table(“Table Name”)] نام جدول خود را مشخص میکنیم

ب – توسط دیتا انوتیشن [Required] فیلذ های اجباری را مشخص میکنیم، کار همان تیک Allow Null را در Sql میکند.

پ – توسط دیتا انوتیشن [MaxLength(Char number)] تعداد کاراکتر ها را مشخص میکنیم.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;
namespace WebApplication1.Models
{
[Table("Tab_User")]
public class User
{
[Key]
public int UserID { get; set; }
[Required]
[MaxLength(60)]
public String Name { get; set; }
[Required]
[MaxLength(60)]
public String Family { get; set; }
public bool Gender { get; set; }
[Required]
[MaxLength(13)]
public String MobileNumber { get; set; }
[Required]
[MaxLength(60)]
public String Email { get; set; }
[Required]
[MaxLength(100)]
public String Password { get; set; }
[Required]
[MaxLength(150)]
public String ImageName { get; set; }
[Required]
public DateTime RegisterDate { get; set; }
[Required]
public bool IsActive { get; set; }
}
}

کانفیگ Context

  • گام چهارم : به گام دوم برمیگردیم یعنی جایی که کلاس MyDBContext را ایجاد گردیم در این کلاس باید جدول یا جدول های خود را معرفی کنیم. برای همین پراپرتی از جنس جنریک DbSet برای کلاس مدل که برای جدول خود ایجاد کردیم میسازیم. و خود Visual پیشنهاد داد نام آن را Users بزاریم، حتما نام ها را با حروف بزرگ بنویسید.
DBSet

DBSet

این کلاس دیتابیس است و نام آن MyDBContext میباشد که در سراسر پروژه میتوانیم از آن استفاده کنیم.

using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;
namespace WebApplication1.Models
{
public class MyDBContext : DbContext
{
public DbSet<User> Users { get; set; }
}
}

افزودن Connection String

  • گام پنجم : حال باید در فایل Web.config خود یک Connection String ایجاد کنیم. تا مشخص کنیم مدلی که برای جدول خود ایجاد کردیم در کدام دیتابیس و کدام سرور ذخیره شود.

ابتدا در قسمت Name نام کلاس Context خود را وارد کنید. در این مثال نام کلاس Context ما MyDBContext میباشد.

و در قسمت Data Source نام سرور خود را وارد کنید. در این مثال نام سرور ما . میباشد.

در قسمت Initial Catalog نام دیتابیس را وارد کنید. در این مثال نام دیتابیس ما MyDB میباشد.

بهترین مکان برای درج Connection String در پایین ترین قسمت و قبل از تگ configuration میباشد.

نمونه کد Connection String برای احراز هویت توسط Windos

<connectionStrings>
<add name="Context Name" connectionString="Data Source= Server Name;Initial Catalog= Database Name;Integrated Security=true" providerName="System.Data.SqlClient" />
</connectionStrings>

نمونه کد Connection String برای احراز هویت توسط Sql

<connectionStrings>
<add name="Context Name" connectionString="Data Source= Server Name;Integrated Security=true;Initial Catalog= Database Name;uid=YourUserName;Password=yourpassword" providerName="System.Data.SqlClient" />
</connectionStrings>

اجرای Migration

  • گام ششم : برای فعال سازی Migration خود همانند تصویر وارد package manager console شوید و دستورات زیر را به ترتیب وارد کنید.
package manager console

package manager console

۱ – دستور شماره یک

enable-migrations

۲ – دستور شماره دو : در زمان اجرا از شما یک نام میخواهد، یک نام معنادار به آن بدهید مثلا CreateDB و یا CreateTableX ویا UpdateTableX و ….

add-migration

۳ – دستور شماره سه

update-database

کار تمام است به نرم افزار SqlServer بروید و دیتابیس خود را مشاهده کنید.

جستجو کنید

طراحی و پیاده سازی پروژه های طراحی سایت دانشجویی

انجام، اجرا و طراحی پروژه های طراحی سایت برای دانشجویان با HTML CSS PHP ASP.NET JAVA و ... با کمترین هزینه. برای مشاهده نمونه کارها و یا دریافت مشاوره رایگان از تیم طراحی سایت تهران آی تی با ما در تماس باشید. ما بهترین پروژه های طراحی سایت را با حداقل هزینه برای شما طراحی میکنیم - مشاوره رایگان 09121486770

مــشاوره و مشاهده نمونه کارها

مطالب مرتبط

لطفا از مطالب مرتبط با این پست دیدن فرمایید

جــذاب های هفته

از پربازدیدترین مطالب تهران آی تی در هفته ای که گذشت دیدن فرمایید

باورکردنی نیست فقط با 300 هزار تومان

طراحی سایت شما + طراحی اپلیکیشن هدیه و رایگان
این یک حراج است در مدت زمان محدود - شرکت های زیادی سایت های ارزان طراحی میکنند اما آیا کیفیت لازم را دارا هستند؟ طراحی سایت ارزان به همراه اپلیکیشن رایگان هدیه برای اولین بار توسط تهران آی تی مخصوص سازمان ها و کسب و کار های کوچک و بزرگ و حتی جدید تیم طراحی سایت تهران آی تی در کنار شماست تا شناخته شوید - مشاوره رایگان 09121486770

مــشاوره و مشاهده نمونه کارها

پشتیبانی 24 ساعته

تیم تهران آی تی در هفت روز هفته و 24 ساعت روز آماده پاسخ گویی به سوالات کاربران و ارائه مشاره رایگان میباشد