چگونه EF Core را به پروژه ASP.NET Core اضافه کنیم؟ نحوه استفاده از Entity Framework Core چگونه است ؟ اگر به دنبال یافتن پاسخ این سوالات هستید این مقاله آموزشی را از دست ندهید.
سرفصلهای پست
آموزش اضافه کردن EF Core به پروژه
خب ابتدا یک پروژه جدید از نوع ASP.NET Core ایجاد کنید برای ایجاد پروژه جدید می توانید از مقاله آموزشی آموزش ایجاد پروژه ASP.NET Core استفاده نمایید. حالا باید بسته ها یا پکیج های مورد نیاز ، برای استفاده از EF Core را در این پروژه نصب کنیم در ادامه این مقالهی آموزشی از سایت میزفا با این بسته ها و نحوه نصبشون در پروژه آشنا خواهید شد.
پکیج های مورد نیاز برای استفاده از Entity Framework Core
خب برای استفاده از EntittFramework Core باید دو پکیج زیر را نصب کنید :
- پکیج Microsoft.EntityFrameworkCore.SqlServer
- پکیج Microsoft.EntityFrameworkCore.Tools
نحوه نصب پیکج های مورد نیاز برای Entity Framework Core
شما از طریق دو روش زیر می توانید اقدام به نصب پکیج های لازم برای Entity Framework Core کنید:
- با استفاده از Package Manager Console
- با استفاده از 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 کلیک کنید تا این بسته ها برای شما نصب شوند.
و حالا پروژه شما آماده استفاده از EF Core 2.2 می باشد. در صورتی که سوالی پیرامون این مقاله آموزشی داشتید در قسمت نظرات مطرح کنید.
18 پاسخ
سلام خسته نباشید ببخشید من هنگام نصب پکیج با خطا مواجه میشم خواهش میکنم از طریق ایمیل پاسخ بنده رو بدید ممنون
+ 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
غیر از این خطاها من هنگام ایجاد پروژه بعد از ایجاد اون پوشه مدل نداره بعد فضای نام ها رو نمایش نمیده
سلام وقتتون بخیر
پروژتون رو از نوع ASP.NET Core Web Application ساختید؟
سلام وقتتون بخیر ممون از آموزش خویتون .
ببخشید من جدولهامو تو 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’.
به نطرتون مکلش چیه؟ ممنون میشم راهنماییم کنید
سلام وقتتون بخیر
شما کد زیر را امتحان کنید در این کد Trusted_Connection=False را False قرار دادم.
Scaffold-DbContext "Server=.;Database=RestaurantDB;Trusted_Connection=False;User ID=sa;Password=1234" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entities -force
سلام خانم ابراهیمی
من یه procedure دارم که دو select داره.
یه دستور select یک ردیف بازگشتی داره و دستور دیگه چند تا.
چجوری دستور FromSql را اجراکنم؟
سلام حقیقتش متوجه منظور شما نشدم ، ولی اگر شما یک Storeprocedure نوشتید با متد ExecuteSqlCommand می تونید اجراش کنید.
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
اینجوریه
سلام ، به نظر میرسه شما با این StoreProcedure میخواهید اطلاعات محصول به همراه تگ های اون محصول رو بگیرید
می تونید از دوتا Select استفاده نکنید و برای گرفتن تگ های محصول یک Function تعریف کنید و بعدش این Function رو داخل این Store Procedure فراخوانی کنید اون وقت دیگه مشکل شما حل خواهد شد و می تونید از متد ExecuteSqlCommand برای اجرای این StoreProcedure استفاده کنید.
سلام.
من از روش database first استفاده کردم. چطور از stored procedure هایی که تو sql ساختم استفاده کنم؟
با استفاده از متد FromSql و یا ExecuteSqlCommand می تونید یک Store Procedure را اجرا کنید به دوتا مثال زیر دقت کنید
با سلام
اگه داخل SP از join استفاده کرده باشین و فیلد های برگشتی از چند جدول باشه تابع بالا جواب نمی دن.
در صورت امکان بنده را رهنمایی بفرمائید%
سلام … منظورتون چه تابعی هست ؟
سلام .
خب می تونید از متد
ExecuteSqlCommand
استفاده کنید.با عرض سلام و خسته نباشید
با توجه به تجربه ای که در زمینه طراحی وب سایت دارید میخواستم درخواست کنم آموزشهای در رابطه با asp.net core به صورت معماری سه لایه بزارید و همینطور آموزش های در مورد webapi به صورت معماری سه لایه بزارید
با تشکر از آموزش های بروز و خوبتون
موفق باشید
سلام… ممنون از پیشنهاداتتون … حتما مقالات آموزشی در این مورد خواهیم داشت.
سلام استاد خسته نباشد . خیلی خیلی ممنونم از زحمات شما بخاطر ارائه این آموزش های مفید .
استاد من در نصب SqlServer و EntityFrameworktools به خطا برمیخورم نمیدونم چرا هر جفتشو نصب میکنم بعد دستور
Add-Migration -Name “MyDB” -Context “DBCONTEXT” رو میزنم همش خطا میده حتی EntityFrameworkeCore رو هم تغییر دادم ولی درست نشد چی کار کنم استاد بخدا ناامید شدم…. یا میگه این بسته ها با Core 3 سازگارن یه بار یه خطای دیگه میده ..
سلام وقت شما بخیر ، ممنونم سلامت باشید
نسخه پکیج هایی که نصب می کنید باید با نسخه .NET Core که نصب شده مطابقت داشته باشید
اگر نسخه .net core شما 3.1 هست باید ورژن 3.1 این پکیج ها رو نصب کنید. احتمالا شما اخرین ورژن رو نصب می کنید برای همین با نسخه .net core سازگاری ندارد.