Veritabanı ve ilk veri tabanı olan veri tabanı modelinde bigint
birincil anahtar alanıyla çalışan tablom var. Aşağıdaki şekilde Çalışan sınıfBigint'e gereksiz dönüştürme
public partial class Employee
{
public long Emp_No { get; set; }
public string Name { get; set; }
public string Family { get; set; }
...
}
Ben O sorgusu oluşturun
List<long> ids = new List<long>() {1,2,3,4,5,6}
database.Employees.Where(q => ids.Contain(q.Emp_No)).ToList();
Entity Framework ile bu temel sorgu yazmak bu yapıya sahiptir: gereksiz döküm
SELECT
[Extent1].[Emp_No] AS [Emp_No],
[Extent1].[Name] AS [Name],
[Extent1].[Family] AS [Family],
...
FROM [dbo].[Employee] AS [Extent1]
WHERE [Extent1].[Emp_No] IN (cast(0 as bigint),
cast(1 as bigint),
cast(2 as bigint),
cast(3 as bigint),
cast(4 as bigint),
cast(5 as bigint),
cast(6 as bigint))
yoktur Gördüğünüz gibi Sorgudaki bigint Emp_No
ve ids
dizilerinin her ikisi de long
dizesidir, 012 olduğunda özel olarak kötü yürütme sürelerine neden olurdizisinin birçok öğesi vardır.
Bu gereksiz kadroyu nasıl kaldırabilirim?
Bunu yapamıyorum .. Uzun türlere ihtiyacım var –