EntityFrameworkServicesBuilder Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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>
[System.Runtime.CompilerServices.Nullable(0)]
public class EntityFrameworkServicesBuilder
public class EntityFrameworkServicesBuilder
type EntityFrameworkServicesBuilder = class
interface IInfrastructure<IServiceCollection>
[<System.Runtime.CompilerServices.Nullable(0)>]
type EntityFrameworkServicesBuilder = class
type EntityFrameworkServicesBuilder = class
Public Class EntityFrameworkServicesBuilder
Implements IInfrastructure(Of IServiceCollection)
Public Class EntityFrameworkServicesBuilder
- Devralma
-
EntityFrameworkServicesBuilder
- Türetilmiş
- Özellikler
- 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 kapsama kaydedilmesini sağlar. Bazı durumlarda sağlayıcı farklı bir kapsama sahip bir hizmeti kaydedebilir, ancak tüm bağımlılıklarının yeni kapsamı işleyebilmesine ve buna bağlı hizmetler için sorun oluşturmaması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
| Veri Akışı Adı | Description |
|---|---|
| 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
| Veri Akışı Adı | Description |
|---|---|
| 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
| Veri Akışı Adı | Description |
|---|---|
| ServiceCollectionMap |
Temel alınan ServiceCollectionMapöğesine erişim. |
Yöntemler
| Veri Akışı Adı | Description |
|---|---|
| GetServiceCharacteristics(Type) |
Verilen hizmet türü için öğesini ServiceCharacteristics alır. |
| TryAdd(Type, Object) |
Entity Framework hizmetinin bir uygulamasını yalnızca henüz kaydedilmemişse ekler. Bu yöntem yalnızca singleton hizmetleri için kullanılabilir. |
| TryAdd(Type, Type, Func<IServiceProvider,Object>) |
Entity Framework hizmeti için bir fabrika ekler, ancak henüz kaydedilmemişse. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır. |
| TryAdd(Type, Type) |
Entity Framework hizmetinin bir uygulamasını yalnızca henüz kaydedilmemişse ekler. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır. |
| TryAdd<TService,TImplementation>() |
Entity Framework hizmetinin bir 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 bir fabrika ekler, ancak henüz kaydedilmemişse. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır. |
| TryAdd<TService>(Func<IServiceProvider,TService>) |
Entity Framework hizmeti için bir fabrika ekler, ancak henüz kaydedilmemişse. Hizmetin kapsamı, Entity Framework tarafından otomatik olarak tanımlanır. |
| TryAdd<TService>(TService) |
Entity Framework hizmetinin bir uygulamasını yalnızca henüz kaydedilmemişse ekler. Bu yöntem yalnızca singleton hizmetleri 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ınan ServiceCollectionMap hizmetlere erişim için bu yöntemi çağırmalıdır. Entity Framework hizmetlerinin uygulamalarının bu yöntemle 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ı
| Veri Akışı Adı | Description |
|---|---|
| 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ı
| Veri Akışı Adı | Description |
|---|---|
| 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. |