در این پست از وبسایت پرووید در رابطه با آموزش Query گرفتن در Entity Framework Core #1 صحبت خواهیم کرد. تکنولوژی Entity Framework Core نسل بعدی Entity Framework است که توسط مایکروسافت معرفی شده است.

در این آموزش از وبسایت پرووید در رابطه با Query گرفتن از دیتابیس با استفاده از Entity Framework Core صحبت می‌کنیم. جالب است بدانید که Query گرفتن در Entity Framework Core شبیه به Query گرفتن با استفاده از ورژن های قبلی Entity Framework از قبیل EF 6.x است. با این تفاوت که SQL هایی که توسط Query های شما در Entity Framework Core تولید می‌شوند بهینه سازی بیشتری بر روی آنها انجام شده است.

بسته ی آموزش شروع به کار با Entity Framework Core

از شما دعوت می کنیم که از بسته ی آموزش شروع به کار با Entity Framework Core دیدن کنید.

همچنین می توانید Function های سی شارپ و VB.NET را در درون Query هایی که با LINQ-to-Entities می ‌نویسید لحلظ کنید. در رابطه با LINQ-to-Entities در قسمت‌ های دیگر وبسایت پرووید صحبت کرده ایم.

آموزش .NET Core برای برنامه نویسان ویندوز

از شما دعوت می کنیم که از بسته ی آموزش .NET Core برای برنامه نویسان ویندوز دیدن کنید.

و ما در این آموزش در رابطه با بعضی از ویژگی ‌های جدید فرآیند Query گرفتن از دیتابیس با استفاده از Entity Framework Core صحبت می‌کنیم.

استفاده از Function های سی شارپ و VB.NET در Query ها

اول اینکه باید بگوییم که Entity Framework Core یک قابلیت جدید در LINQ-to-Entities دارد که با استفاده از آن شما می توانید توابع سی شارپ یا VB.NET را در Query های خود لحاظ کنید. این موضوع در Entity Framework 6 قابل انجام نبود. لطفاً به کد زیر نگاهی بیندازید.

private static void Main(string[] args)
{
    var context = new SchoolContext();
    var studentsWithSameName = context.Students
                                      .Where(s => s.FirstName == GetName())
                                      .ToList();
}

public static string GetName() {
    return "Bill";
}

همانطور که در این کد می بینید در قسمت اول از یک تابع سی شارپ با نام GetName استفاده شده است. این Query به دستور SQL زیر ترجمه می‌ شود.

exec sp_executesql N'SELECT [s].[StudentId], [s].[DoB], [s].[FirstName], 
    [s].[GradeId], [s].[LastName], [s].[MiddleName]
FROM [Students] AS [s]
WHERE [s].[FirstName] = @__GetName_0',N'@__GetName_0 nvarchar(4000)',
    @__GetName_0=N'Bill'
Go

در قسمت بعدی از این آموزش در رابطه با قابلیت Eager Loading در Entity Framework Core صحبت خواهیم کرد.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *