آموزش افزودن Entity Framework Core به پروژه

افزودنEntity Framework Core به پروژه
افزودنEntity Framework Core به پروژه

چگونه EF Core را به پروژه  ASP.NET Core اضافه کنیم؟ نحوه استفاده از Entity Framework Core  چگونه است ؟ اگر به دنبال یافتن پاسخ این سوالات هستید این مقاله آموزشی را از دست ندهید.

بخش ۱ : Entity Framework Core چیست ؟
بخش ۲ : آموزش نصب و راه اندازی EF Core 2.2 (همین مقاله)

آموزش اضافه کردن EF Core به پروژه

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

پکیج های مورد نیاز برای استفاده از Entity Framework Core

خب برای استفاده از EntittFramework Core باید دو پکیج زیر را نصب کنید :

  1. پکیج Microsoft.EntityFrameworkCore.SqlServer
  2. پکیج Microsoft.EntityFrameworkCore.Tools

نحوه نصب پیکج های مورد نیاز برای Entity Framework Core

شما از طریق دو روش زیر می توانید اقدام به نصب پکیج های لازم برای Entity Framework Core کنید:

  1. با استفاده از Package Manager Console
  2. با استفاده از  Manage Nuget Packages For Solution

نصب پکیج از طریق Package Manager Console

برای نصب این پکیج ها از طریق Package Manager Console در منوی نرم افزار ویژوال استودیو روی Tools کلیک کرده و پس از کلیک بر روی Nuget Package Manager گزینه‌ی Package Manager Console را انتخاب کنید تا پنجره Package Manager Console در پایین نرم افزار ویژوال استودیو برای شما باز شود.

حال در پنجره باز شده برای نصب بسته ی Microsoft.EntityFrameworkCore.SqlServer دستور زیر را وارد کنید و سپس دکمه Enter را فشار دهید تا این بسته برای شما نصب شود.

Install-Package Microsoft.EntityFrameworkCore.SqlServer

و برای نصب بسته Microsoft.EntityFrameworkCore.Tools دستور زیر را وارد کنید و سپس دکمه Enter را فشار دهید تا این بسته برای شما نصب شود.

Install-Package Microsoft.EntityFrameworkCore.Tools

نصب پکیج از طریق Manage Nuget For Solution

برای نصب پکیج ها از طریق Manage Nuget For Solution از منوی نرم افزار ویژوال استدیو روی Tools کلیک کرده و سپس Manage Nuget For Solution  را انتخاب کنید سپس در پنجره Nuget-Solution بر روی تب Browse کلیک کرده و بسته های مورد نیاز برای EF Core را سرچ کنید و پس از انتخاب این بسته ها روی دکمه Install کلیک کنید تا این بسته ها برای شما نصب شوند.

نصب پکیج از طریق Manage Nuget Packages
install package by manage nuget for solution

و حالا پروژه شما آماده استفاده از EF Core 2.2 می باشد. در صورتی که سوالی پیرامون این مقاله آموزشی داشتید در قسمت نظرات مطرح کنید.

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

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

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

18 نظر

18 پاسخ

  1. سلام خسته نباشید ببخشید من هنگام نصب پکیج با خطا مواجه میشم خواهش میکنم از طریق ایمیل پاسخ بنده رو بدید ممنون
    + Install-Package Microsoft.EntityFrameworkCore.Tools
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

    اینم از طریق salution
    Severity Code Description Project File Line Suppression State
    Error Package restore failed. Rolling back package changes for ‘WebApplication3’. 0
    غیر از این خطاها من هنگام ایجاد پروژه بعد از ایجاد اون پوشه مدل نداره بعد فضای نام ها رو نمایش نمیده

    1. سلام وقتتون بخیر
      پروژتون رو از نوع ASP.NET Core Web Application ساختید؟

  2. سلام وقتتون بخیر ممون از آموزش خویتون .
    ببخشید من جدولهامو تو sqlساختم , و میخوام روش db firstرو انجام بدم ولی دستور scaffold dbcontex همش با خطا مواجهه نمن sqlserverرو خیلی وارد نیستم ولی در حد اینکه نصبش کردم و با sql authentication و sa و یه پسورد کانکت شدم و جدولهامو ساختم برای سرو نقطه میذارم یعنی سیستم خودم. و sa وپسوردی که هنگام نصب اس کی ال دادم رو باهاش وارد sql میشم رو مینویسمبه صورت زیر

    Scaffold-DbContext “Server=.;Database=RestaurantDB;user id=sa;password=1234;” Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entities -force
    امامیگه نمیتونه به دیتابیس وصل بشه میگه نمیتونم لاگین کنم و پیغامش اینه
    cannot open database “RrantDB” requested by the login. The login failed.
    Login failed for user ‘sa’.
    به نطرتون مکلش چیه؟ ممنون میشم راهنماییم کنید

    1. سلام وقتتون بخیر
      شما کد زیر را امتحان کنید در این کد Trusted_Connection=False را False قرار دادم.

      Scaffold-DbContext "Server=.;Database=RestaurantDB;Trusted_Connection=False;User ID=sa;Password=1234" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entities -force

  3. سلام خانم ابراهیمی
    من یه procedure دارم که دو select داره.
    یه دستور select یک ردیف بازگشتی داره و دستور دیگه چند تا.
    چجوری دستور FromSql را اجراکنم؟

    1. سلام حقیقتش متوجه منظور شما نشدم ، ولی اگر شما یک Storeprocedure نوشتید با متد ExecuteSqlCommand می تونید اجراش کنید.

      1. ALTER PROCEDURE [dbo].[SpcGetProductDetail]
        @ProductId uniqueidentifier

        AS
        BEGIN

        SET NOCOUNT ON;

        SELECT
        ProductId,
        ProductName,
        ProductMetaDescription,
        ProductDescription,
        ProductVisit,
        ProductVideoLink,
        ProductPageTitle,
        ProductCategoryPrimery,
        ProductSubCategory
        FROM VProductDetail
        WHERE
        ProductId=@ProductId

        select * from Product.TblProductTag

        END

        اینجوریه

        1. سلام ، به نظر میرسه شما با این StoreProcedure میخواهید اطلاعات محصول به همراه تگ های اون محصول رو بگیرید
          می تونید از دوتا Select استفاده نکنید و برای گرفتن تگ های محصول یک Function تعریف کنید و بعدش این Function رو داخل این Store Procedure فراخوانی کنید اون وقت دیگه مشکل شما حل خواهد شد و می تونید از متد ExecuteSqlCommand برای اجرای این StoreProcedure استفاده کنید.

  4. سلام.
    من از روش database first استفاده کردم. چطور از stored procedure هایی که تو sql ساختم استفاده کنم؟

    1. با استفاده از متد FromSql و یا ExecuteSqlCommand می تونید یک Store Procedure را اجرا کنید به دوتا مثال زیر دقت کنید

      var students = context.Students.FromSql(“YourStoreProcedureName @p”, param).ToList();
      
      context.Database.ExecuteSqlCommand(“YourStoreProcedureName @p”, parameters: new[] { “Bill” });
      
      1. با سلام
        اگه داخل SP از join استفاده کرده باشین و فیلد های برگشتی از چند جدول باشه تابع بالا جواب نمی دن.
        در صورت امکان بنده را رهنمایی بفرمائید%

          1. var students = context.Students.FromSql(“YourStoreProcedureName @p”, param).ToList();
            
            context.Database.ExecuteSqlCommand(“YourStoreProcedureName @p”, parameters: new[] { “Bill” });
          2. سلام .
            خب می تونید از متد ExecuteSqlCommand استفاده کنید.

            context.Database.ExecuteSqlCommand(“YourStoreProcedureName @p”, parameters: new[] { “Bill” });
  5. با عرض سلام و خسته نباشید
    با توجه به تجربه ای که در زمینه طراحی وب سایت دارید میخواستم درخواست کنم آموزشهای در رابطه با asp.net core به صورت معماری سه لایه بزارید و همینطور آموزش های در مورد webapi به صورت معماری سه لایه بزارید
    با تشکر از آموزش های بروز و خوبتون
    موفق باشید

    1. سلام… ممنون از پیشنهاداتتون … حتما مقالات آموزشی در این مورد خواهیم داشت.

    2. سلام استاد خسته نباشد . خیلی خیلی ممنونم از زحمات شما بخاطر ارائه این آموزش های مفید .
      استاد من در نصب SqlServer و EntityFrameworktools به خطا برمیخورم نمیدونم چرا هر جفتشو نصب میکنم بعد دستور
      Add-Migration -Name “MyDB” -Context “DBCONTEXT” رو میزنم همش خطا میده حتی EntityFrameworkeCore رو هم تغییر دادم ولی درست نشد چی کار کنم استاد بخدا ناامید شدم…. یا میگه این بسته ها با Core 3 سازگارن یه بار یه خطای دیگه میده ..

      1. سلام وقت شما بخیر ، ممنونم سلامت باشید
        نسخه پکیج هایی که نصب می کنید باید با نسخه .NET Core که نصب شده مطابقت داشته باشید
        اگر نسخه .net core شما 3.1 هست باید ورژن 3.1 این پکیج ها رو نصب کنید. احتمالا شما اخرین ورژن رو نصب می کنید برای همین با نسخه .net core سازگاری ندارد.

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

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

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

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

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

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