.NET

Entity Framework Core İleri Düzey

Raw SQL, stored procedures, transaction'lar, AsNoTracking, AsSplitQuery, query tags, interceptors, performans ayarlama

25 mülakat soruları·
Mid-Level
1

EF Core'da entity'leri almak için raw SQL sorgusu nasıl çalıştırılır?

Cevap

FromSql() veya FromSqlRaw() metodu, DbContext tarafından izlenen entity'leri döndürürken raw SQL sorgularını çalıştırmayı sağlar. Bu, stored procedures veya tablo değerli fonksiyonların çağrılması gibi LINQ'in sorguyu doğrudan ifade edemediği senaryolarda kullanışlıdır. Sonuçlar daha sonra filtre eklemek veya ilişkileri dahil etmek için LINQ ile birleştirilebilir.

2

EF Core'da FromSqlRaw() ile ExecuteSqlRaw() arasındaki fark nedir?

Cevap

FromSqlRaw(), izlenen entity'leri döndüren SELECT sorgularını çalıştırmak için kullanılır ve LINQ ile birleştirmeye olanak tanır. ExecuteSqlRaw(), sorgu olmayan komutları (INSERT, UPDATE, DELETE) çalıştırmak için kullanılır ve etkilenen satır sayısını döndürür. FromSqlRaw() bir DbSet üzerinde uygulanırken, ExecuteSqlRaw() Database üzerinde uygulanır. Bu ayrım, tip güvenliğini ve model tutarlılığını garanti eder.

3

EF Core'da entity döndüren bir stored procedure nasıl çağrılır?

Cevap

Bir stored procedure çağırmak ve sonuçları entity'lere eşlemek için FromSqlRaw() veya Database.SqlQuery<T>() kullanın. Çağrıdan sonra AsEnumerable() eklemek çok önemlidir; bu, EF Core'un stored procedure sonuçları üzerinde kompozisyon yapmaya çalışmasını ve SQL sözdizimi hatalarına yol açmasını önler. SQL enjeksiyonunu önlemek için parametreler @p0, @p1 sözdizimiyle geçirilebilir.

4

EF Core'da AsNoTracking()'in rolü nedir?

5

AsNoTracking() yerine AsNoTrackingWithIdentityResolution() ne zaman kullanılır?

+22 mülakat soruları

Bir sonraki mülakatın için .NET'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla