paint-brush
EF কোর মাইগ্রেশন: শুরু করার জন্য একটি ধাপে ধাপে নির্দেশিকাদ্বারা@ssukhpinder
1,689 পড়া
1,689 পড়া

EF কোর মাইগ্রেশন: শুরু করার জন্য একটি ধাপে ধাপে নির্দেশিকা

দ্বারা Sukhpinder Singh8m2023/03/09
Read on Terminal Reader
Read this story w/o Javascript

অতিদীর্ঘ; পড়তে

ইএফ কোর হল একটি অবজেক্ট-রিলেশনাল ম্যাপিং (ORM) ফ্রেমওয়ার্ক যা ডেভেলপারদের ডাটাবেসের সাথে ইন্টারঅ্যাক্ট করতে দেয়। ইএফ কোরের একটি অপরিহার্য বৈশিষ্ট্য হল ডাটাবেস মাইগ্রেশন পরিচালনা করার ক্ষমতা। এই নিবন্ধটি EF কোর মাইগ্রেশন প্রদর্শন করে, কেন সেগুলি গুরুত্বপূর্ণ, এবং কীভাবে সেগুলিকে একটি উদাহরণ সহ ব্যবহার করতে হয়৷
featured image - EF কোর মাইগ্রেশন: শুরু করার জন্য একটি ধাপে ধাপে নির্দেশিকা
Sukhpinder Singh HackerNoon profile picture

এন্টিটি ফ্রেমওয়ার্ক কোর (ইএফ কোর) হল একটি অবজেক্ট-রিলেশনাল ম্যাপিং (ORM) ফ্রেমওয়ার্ক যা ডেভেলপারদের .NET অবজেক্ট ব্যবহার করে ডাটাবেসের সাথে ইন্টারঅ্যাক্ট করতে দেয়। ইএফ কোরের একটি অপরিহার্য বৈশিষ্ট্য হল ডাটাবেস মাইগ্রেশন পরিচালনা করার ক্ষমতা।

পূর্বশর্ত

  • মৌলিক C# প্রোগ্রামিং ভাষার জ্ঞান।
  • মৌলিক OOPS ধারণা বোঝার


এই নিবন্ধটি EF কোর মাইগ্রেশন প্রদর্শন করে, কেন তারা গুরুত্বপূর্ণ, এবং একটি উদাহরণ সহ তাদের কীভাবে ব্যবহার করা যায়। সুতরাং, শুরু করতে:


C# এর পরিচিতি


C# বেশ কিছু সময় ধরে আছে, এবং এটি আরও উন্নত বৈশিষ্ট্য অর্জন করে বিকাশ অব্যাহত রেখেছে। medium.com

শিক্ষার উদ্দেশ্য

  • উদাহরণ সহ ইএফ কোর মাইগ্রেশন কীভাবে ব্যবহার করবেন।


  • কেন EF কোর মাইগ্রেশন গুরুত্বপূর্ণ

শুরু হচ্ছে

EF কোর মাইগ্রেশন হল সময়ের সাথে সাথে আপনার ডাটাবেস স্কিমার পরিবর্তনগুলি পরিচালনা করার একটি উপায়। যখন আপনি আপনার ডাটাবেস মডেলে পরিবর্তন করেন (যেমন টেবিল বা কলাম যোগ করা বা অপসারণ করা), আপনি একটি মাইগ্রেশন তৈরি করতে পারেন যা সেই পরিবর্তনগুলিকে বর্ণনা করে।


নতুন মডেলের সাথে মেলে ডাটাবেস স্কিমা আপডেট করতে মাইগ্রেশন ব্যবহার করা হয়।

কেন EF কোর মাইগ্রেশন গুরুত্বপূর্ণ?

EF কোর মাইগ্রেশন অপরিহার্য কারণ তারা আপনাকে ডেটা সংরক্ষণ করার সময় আপনার ডাটাবেস স্কিমাকে সময়ের সাথে বিকশিত করতে দেয়।


মাইগ্রেশন ছাড়া, আপনি যখনই আপনার মডেলে পরিবর্তন করবেন তখন আপনাকে ম্যানুয়ালি আপনার ডাটাবেস স্কিমা পরিবর্তন করতে হবে, যা সময়সাপেক্ষ এবং ত্রুটি-প্রবণ হতে পারে।


মাইগ্রেশনগুলি আপনার ডাটাবেস স্কিমার সংস্করণের একটি উপায়ও দেয় যাতে আপনি সহজেই পরিবর্তনগুলি ট্র্যাক করতে পারেন এবং প্রয়োজনে পূর্ববর্তী সংস্করণগুলিতে ফিরে যেতে পারেন।

কিভাবে EF কোর মাইগ্রেশন ব্যবহার করবেন?

EF কোর মাইগ্রেশন ব্যবহার করতে, আপনাকে কয়েকটি ধাপ অনুসরণ করতে হবে:


  1. একটি নতুন EF কোর প্রকল্প তৈরি করুন। প্রথম ধাপ হল ভিজ্যুয়াল স্টুডিওতে একটি নতুন ইএফ কোর প্রকল্প তৈরি করা। আপনি "একটি নতুন প্রকল্প তৈরি করুন" নির্বাচন করে এবং তারপর "ASP.NET কোর ওয়েব অ্যাপ্লিকেশন" নির্বাচন করে এবং "ওয়েব অ্যাপ্লিকেশন (মডেল-ভিউ-কন্ট্রোলার)" টেমপ্লেট নির্বাচন করে এটি করতে পারেন৷


  2. একটি ডাটাবেস প্রসঙ্গ তৈরি করুন। পরবর্তী ধাপ হল একটি ডাটাবেস প্রসঙ্গ শ্রেণী তৈরি করা। এই ক্লাসটি আপনার .NET অবজেক্ট এবং ডাটাবেসের মধ্যে মিথস্ক্রিয়া পরিচালনা করে। একটি ডাটাবেস প্রসঙ্গ তৈরি করতে, আপনার প্রকল্পে একটি নতুন ক্লাস তৈরি করুন এবং এটি DbContext ক্লাস থেকে উত্তরাধিকার সূত্রে প্রাপ্ত করুন।


 public class MyDbContext : DbContext { public MyDbContext(DbContextOptions<MyDbContext> options) : base(options) { } }


একটি ডাটাবেস মডেল তৈরি করুন

একটি ডাটাবেস প্রসঙ্গ তৈরি করার পরে, আপনাকে একটি ডাটাবেস মডেল তৈরি করতে হবে। এই মডেলটি আপনার ডাটাবেসের গঠনকে উপস্থাপন করে এবং ডাটাবেস টেবিল এবং কলাম তৈরি করতে ইএফ কোর ব্যবহার করে।


একটি ডাটাবেস মডেল তৈরি করতে, আপনার প্রকল্পে একটি নতুন ক্লাস তৈরি করুন এবং ডাটাবেস ক্ষেত্র হিসাবে এর বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করুন।


 public class MyModel { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } }


EF কোর মাইগ্রেশন সক্ষম করুন

এর পরে, আপনাকে আপনার প্রকল্পে EF কোর মাইগ্রেশন সক্ষম করতে হবে। এটি করার জন্য, প্যাকেজ ম্যানেজার কনসোল খুলুন এবং নিম্নলিখিত কমান্ডটি প্রবেশ করান:


 PM> Install-Package Microsoft.EntityFrameworkCore.Tools


এই প্যাকেজটিতে EF কোর মাইগ্রেশন তৈরি এবং পরিচালনা করার জন্য প্রয়োজনীয় সরঞ্জাম রয়েছে।


একটি মাইগ্রেশন তৈরি করুন

EF Core Migrations সক্ষম করে, আপনি আপনার প্রথম মাইগ্রেশন তৈরি করতে পারেন। একটি মাইগ্রেশন তৈরি করতে, প্যাকেজ ম্যানেজার কনসোল খুলুন এবং নিম্নলিখিত কমান্ডটি প্রবেশ করান:


 PM> Add-Migration InitialCreate


এটি "InitialCreate" নামে একটি নতুন মাইগ্রেশন তৈরি করবে যা আপনার ডাটাবেস মডেলে আপনার করা পরিবর্তনগুলি বর্ণনা করে৷ আপনি আপনার প্রকল্পের "মাইগ্রেশন" ফোল্ডারে মাইগ্রেশনের বিষয়বস্তু দেখতে পারেন।


ডেটাবেস আপডেট করুন

একটি মাইগ্রেশন তৈরি করার পরে, আপনি নতুন মডেলের সাথে মেলে ডাটাবেস স্কিমা আপডেট করতে পারেন। এটি করার জন্য, প্যাকেজ ম্যানেজার কনসোল খুলুন এবং নিম্নলিখিত কমান্ডটি প্রবেশ করান:


 PM> Update-Database


এটি ডাটাবেসে মাইগ্রেশন প্রয়োগ করবে এবং এর স্কিমা আপডেট করবে।

উদাহরণ

আসুন EF কোর মাইগ্রেশন ব্যবহার করার একটি উদাহরণ দেখি। ধরুন আমরা দুটি কলাম সহ একটি সাধারণ "ছাত্র" টেবিল তৈরি করতে চাই: "আইডি" এবং "নাম"। আমরা ভিজ্যুয়াল স্টুডিওতে একটি নতুন ASP.NET কোর ওয়েব অ্যাপ্লিকেশন প্রকল্প তৈরি করে শুরু করব।


  1. একটি নতুন EF কোর প্রকল্প তৈরি করুন। ভিজ্যুয়াল স্টুডিওতে একটি নতুন ASP.NET কোর ওয়েব অ্যাপ্লিকেশন প্রকল্প তৈরি করুন। "ওয়েব অ্যাপ্লিকেশন (মডেল-ভিউ-কন্ট্রোলার)" টেমপ্লেটটি নির্বাচন করুন এবং প্রমাণীকরণের জন্য "ব্যক্তিগত ব্যবহারকারী অ্যাকাউন্ট" নির্বাচন করুন। প্রকল্পের নাম দিন "EFCoreMigrationsExample"।


  2. একটি ডাটাবেস প্রসঙ্গ তৈরি করুন। প্রকল্পের "মডেলস" ফোল্ডারে "MyDbContext" নামে একটি নতুন ক্লাস তৈরি করুন এবং এটি DbContext ক্লাস থেকে উত্তরাধিকারসূত্রে প্রাপ্ত করুন।


 using Microsoft.EntityFrameworkCore; namespace EFCoreMigrationsExample.Models { public class MyDbContext : DbContext { public MyDbContext(DbContextOptions<MyDbContext> options) : base(options) { } public DbSet<Student> Students { get; set; } } }


"স্টুডেন্টস" প্রপার্টি হল একটি DbSet যা আমাদের ডাটাবেসের "স্টুডেন্টস" টেবিলের প্রতিনিধিত্ব করে।


একটি ডাটাবেস মডেল তৈরি করুন

প্রকল্পের "মডেল" ফোল্ডারে একটি নতুন "ছাত্র" শ্রেণী তৈরি করুন এবং এর বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করুন৷

 namespace EFCoreMigrationsExample.Models { public class Student { public int Id { get; set; } public string Name { get; set; } } }


EF কোর মাইগ্রেশন সক্ষম করুন

প্যাকেজ ম্যানেজার কনসোলটি খুলুন এবং EF কোর সরঞ্জাম প্যাকেজ ইনস্টল করতে নিম্নলিখিত কমান্ডটি প্রবেশ করান:

 PM> Install-Package Microsoft.EntityFrameworkCore.Tools


একটি মাইগ্রেশন তৈরি করুন

প্যাকেজ ম্যানেজার কনসোল খুলুন, এবং একটি মাইগ্রেশন তৈরি করতে নিম্নলিখিত কমান্ডটি প্রবেশ করান:

 PM> Add-Migration InitialCreate


এটি "InitialCreate" নামে একটি নতুন মাইগ্রেশন তৈরি করবে যা আমাদের ডাটাবেস মডেলে করা পরিবর্তনগুলি বর্ণনা করে।


মাইগ্রেশন ফাইলটি এইরকম হওয়া উচিত:

 using Microsoft.EntityFrameworkCore.Migrations; namespace EFCoreMigrationsExample.Migrations { public partial class InitialCreate : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "Students", columns: table => new { Id = table.Column<int>(type: "int", nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column<string>(type: "nvarchar(max)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_Students", x => x.Id); }); } protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "Students"); } } }


মাইগ্রেশন "আইডি" এবং "নাম" এর জন্য কলাম সহ "ছাত্র" নামে একটি নতুন টেবিল তৈরি করে।

ডাটাবেস আপডেট করুন প্যাকেজ ম্যানেজার কনসোল খুলুন, এবং ডাটাবেস স্কিমা আপডেট করতে নিম্নলিখিত কমান্ডটি লিখুন:


 PM> Update-Database


এটি ডাটাবেসে মাইগ্রেশন প্রয়োগ করবে এবং এর স্কিমা আপডেট করবে।


এখন আমরা EF Core ব্যবহার করে আমাদের ডাটাবেসে ছাত্রদের যোগ করতে, আপডেট করতে এবং মুছতে পারি। উদাহরণস্বরূপ, আমরা এইভাবে ডাটাবেসে একজন নতুন ছাত্র যোগ করতে পারি:

 using EFCoreMigrationsExample.Models; namespace EFCoreMigrationsExample.Controllers { public class HomeController : Controller { private readonly MyDbContext _context; public HomeController(MyDbContext context) { _context = context; } public IActionResult Index() { var student = new Student { Name = "John" }; _context.Students.Add(student); _context.SaveChanges(); return View(); } } }


এই কোডটি স্টুডেন্ট ক্লাসের একটি নতুন দৃষ্টান্ত তৈরি করে এবং এর নাম সম্পত্তি "জন" এ সেট করে। এটি তারপরে স্টুডেন্টস ডিবিসেটে শিক্ষার্থীকে যুক্ত করে এবং ডাটাবেসে পরিবর্তনগুলি সংরক্ষণ করে।

উপসংহার

EF কোর মাইগ্রেশন আপনার অ্যাপ্লিকেশনে ডাটাবেস স্কিমা পরিবর্তনগুলি পরিচালনা করার একটি সুবিধাজনক উপায় প্রদান করে।


এই নিবন্ধটি দেখায় কিভাবে EF কোর মাইগ্রেশন ব্যবহার করে একটি সাধারণ ডাটাবেস স্কিমা তৈরি করা যায়, যার মধ্যে একটি DbContext তৈরি করা, একটি মডেল সংজ্ঞায়িত করা, একটি মাইগ্রেশন করা এবং ডাটাবেস স্কিমা আপডেট করা।


এটি EF কোর যা করতে পারে তার শুরু মাত্র। আপনি ডেটা অনুসন্ধান এবং ম্যানিপুলেট করতে, টেবিলের মধ্যে জটিল সম্পর্ক তৈরি করতে এবং আরও অনেক কিছু করতে EF কোর ব্যবহার করতে পারেন। এর ব্যবহার সহজ এবং বৈশিষ্ট্যের বিস্তৃত পরিসরের সাথে, .NET-এ ডেটা-চালিত অ্যাপ্লিকেশন তৈরির জন্য EF কোর একটি চমৎকার পছন্দ।


এই নিবন্ধটি আপনাকে EF কোর মাইগ্রেশনের সাথে শুরু করতে সাহায্য করেছে। আপনার যদি কোন প্রশ্ন বা মন্তব্য থাকে, অনুগ্রহ করে নিচে তাদের ছেড়ে দিন। শুভ কোডিং!

আমাকে ফল কর

C# প্রকাশনা , LinkedIn , Instagram , Twitter , Dev.to


এছাড়াও এখানে প্রকাশিত