EntityFrameworkServicesBuilder Sınıf

Tanım

Veritabanı sağlayıcılarının hizmetleri kaydederken kullanması için tasarlanmış bir oluşturucu API'si.

public class EntityFrameworkServicesBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.Extensions.DependencyInjection.IServiceCollection>
public class EntityFrameworkServicesBuilder
type EntityFrameworkServicesBuilder = class
    interface IInfrastructure<IServiceCollection>
type EntityFrameworkServicesBuilder = class
Public Class EntityFrameworkServicesBuilder
Implements IInfrastructure(Of IServiceCollection)
Public Class EntityFrameworkServicesBuilder
Devralma
EntityFrameworkServicesBuilder
Türetilmiş
Uygulamalar

Açıklamalar

Sağlayıcılar bu sınıfın bir örneğini oluşturmalı, hizmetlerini kaydetmek için yöntemlerini kullanmalı ve ardından kalan Entity Framework hizmetlerini doldurmak için çağrısı TryAddCoreServices() yapmalıdır.

İlişkisel sağlayıcılar bunun yerine 'EntityFrameworkRelationalServicesBuilder kullanmalıdır.

Entity Framework, hizmetlerin uygun kapsamla kaydedilmesini sağlar. Bazı durumlarda sağlayıcı bir hizmeti farklı bir kapsama kaydedebilir, ancak tüm bağımlılıklarının yeni kapsamı işleyebilmesine ve buna bağlı hizmetler için soruna neden olmamasına dikkat edilmelidir.

Daha fazla bilgi ve örnek için bkz. Veritabanı sağlayıcılarının ve uzantılarının uygulanması .

Oluşturucular

EntityFrameworkServicesBuilder(IServiceCollection)

Veritabanı sağlayıcıları tarafından sağlayıcı hizmetlerinin kaydı için yeni EntityFrameworkServicesBuilder bir oluşturma amacıyla kullanılır. İlişkisel sağlayıcılar 'EntityFrameworkRelationalServicesBuilder' kullanmalıdır.

Alanlar

CoreServices

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

Özellikler

ServiceCollectionMap

Temel alınan ServiceCollectionMapöğesine erişim.

Yöntemler

GetServiceCharacteristics(Type)

Verilen hizmet türü için öğesini ServiceCharacteristics alır.

TryAdd(Type, Object)

Bir Entity Framework hizmetinin uygulamasını yalnızca henüz kaydedilmemişse ekler. Bu yöntem yalnızca tekil hizmetler için kullanılabilir.

TryAdd(Type, Type)

Bir Entity Framework hizmetinin uygulamasını yalnızca henüz kaydedilmemişse ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır.

TryAdd(Type, Type, Func<IServiceProvider,Object>)

Entity Framework hizmeti için yalnızca henüz kaydedilmemiş bir fabrika ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır.

TryAdd<TService,TImplementation>()

Bir Entity Framework hizmetinin uygulamasını yalnızca henüz kaydedilmemişse ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır.

TryAdd<TService,TImplementation>(Func<IServiceProvider,TImplementation>)

Entity Framework hizmeti için yalnızca henüz kaydedilmemiş bir fabrika ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır.

TryAdd<TService>(Func<IServiceProvider,TService>)

Entity Framework hizmeti için yalnızca henüz kaydedilmemiş bir fabrika ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır.

TryAdd<TService>(TService)

Bir Entity Framework hizmetinin uygulamasını yalnızca henüz kaydedilmemişse ekler. Bu yöntem yalnızca tekil hizmetler için kullanılabilir.

TryAddCoreServices()

Sağlayıcı tarafından henüz kaydedilmemiş tüm hizmetlerin varsayılan uygulamalarını kaydeder. Veritabanı sağlayıcılarının bu yöntemi hizmet kaydının son adımı olarak çağırması gerekir; diğer bir ifadeyle, tüm sağlayıcı hizmetleri kaydedildikten sonra.

TryAddProviderSpecificServices(Action<ServiceCollectionMap>)

Veritabanı sağlayıcıları, sağlayıcıya özgü hizmetlerin kaydedilebileceği şekilde temel alınana ServiceCollectionMap erişim için bu yöntemi çağırmalıdır. Entity Framework hizmetlerinin uygulamalarının bu yöntem aracılığıyla değil doğrudan üzerinde EntityFrameworkServicesBuilder kaydedilmesi gerektiğini unutmayın.

TryGetServiceCharacteristics(Type)

Verilen hizmet türü için öğesini ServiceCharacteristics alır.

Belirtik Arabirim Kullanımları

IInfrastructure<IServiceCollection>.Instance

Yapılandırılanı IServiceCollection alır.

Bu özellik, genel API yüzeyinde doğrudan kullanıma sunulmayan hizmetlerden yararlanması gereken uzantı yöntemleri tarafından kullanılmak üzere tasarlanmıştır.

Uzantı Metotları

GetInfrastructure<T>(IInfrastructure<T>)

kullanılarak IInfrastructure<T>gizlenen bir özellikten değerini alır.

Bu yöntem genellikle veritabanı sağlayıcıları (ve diğer uzantılar) tarafından kullanılır. Genellikle uygulama kodunda kullanılmaz.

Şunlara uygulanır