QueryTypeBuilder Sınıf

Tanım

Sorgu türünü yapılandırmak için basit bir API sağlar.

Bu sınıfın örnekleri API kullanılırken metotlardan döndürülür ModelBuilder ve uygulama kodunuzda doğrudan kullanılmak üzere tasarlanmamıştır.

public class QueryTypeBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
type QueryTypeBuilder = class
    interface IInfrastructure<IMutableModel>
    interface IInfrastructure<InternalEntityTypeBuilder>
Public Class QueryTypeBuilder
Implements IInfrastructure(Of IMutableModel), IInfrastructure(Of InternalEntityTypeBuilder)
Devralma
QueryTypeBuilder
Türetilmiş
Uygulamalar
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>

Oluşturucular

QueryTypeBuilder(InternalEntityTypeBuilder)

Bu API Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılmaya yönelik değildir. Bu API, gelecek sürümlerde değişebilir veya kaldırılabilir.

Özellikler

Metadata

Yapılandırılmakta olan sorgu türü.

Yöntemler

HasAnnotation(String, Object)

Sorgu türü üzerine bir ek açıklama ekler veya güncelleştirir. Zaten ' de belirtilen anahtara sahip bir ek açıklama varsa, annotation değeri güncellenir.

HasBaseType(String)

Devralma hiyerarşisinde bu sorgu türünün temel türünü ayarlar.

HasBaseType(Type)

Devralma hiyerarşisinde bu sorgu türünün temel türünü ayarlar.

HasOne(String, String)

Bu sorgu türünün, ilişkide diğer türün tek bir örneğine işaret eden bir başvurusu olduğu bir ilişki yapılandırır.

Bu yöntemin hiçbir parametre olmadan çağrılması, varlık türünde böyle bir özellik olsa bile, ilişkinin bu tarafını hiçbir gezinti özelliği olmadan kullanmak için açıkça yapılandırabileceğinizi unutmayın. Gezinti özelliği kullanılacaksa, belirtilmesi gerekir.

Bu yöntemi çağırdıktan sonra bir çağrısı zincirlemesi gerekir WithMany(String) ya da WithOne(String) ilişkiyi tam olarak yapılandırmak için. Yalnızca bu yöntemi zincirleme çağrı olmadan çağırmak, geçerli bir ilişki oluşturmaz.

HasOne(Type, String)

Bu sorgu türünün, ilişkide diğer türün tek bir örneğine işaret eden bir başvurusu olduğu bir ilişki yapılandırır.

Bu yöntemi çağırdıktan sonra bir çağrısı zincirlemesi gerekir WithMany(String) ya da WithOne(String) ilişkiyi tam olarak yapılandırmak için. Yalnızca bu yöntemi zincirleme çağrı olmadan çağırmak, geçerli bir ilişki oluşturmaz.

HasQueryFilter(LambdaExpression)

Bu sorgu türünü hedefleyen sorgulara otomatik olarak uygulanacak bir LINQ koşul ifadesi belirtir.

Ignore(String)

Verilen özelliği sorgu türünden dışlar. Bu yöntem genellikle kural tarafından eklenen sorgu türünden özellikleri kaldırmak için kullanılır.

Property(String)

Sorgu türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Bu aşırı yüklemeye yeni bir özellik eklenirken Özellik adı, sorgu türündeki bir CLR özelliğinin veya alanının adıyla eşleşmelidir. Bu aşırı yükleme yeni bir gölge durumu özelliği eklemek için kullanılamaz.

Property(Type, String)

Sorgu türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Yeni bir özellik eklenirken, sorgu türü sınıfında aynı ada sahip bir özellik varsa, modele eklenecektir. Sorgu türü sınıfında hiçbir özellik yoksa, yeni bir gölge durumu özelliği eklenecektir. Gölge durumu özelliği, sorgu türü sınıfında karşılık gelen bir özelliği olmayan bir özelliktir. Özelliği için geçerli değer, ChangeTracker sorgu türü sınıfının örneklerine depolanması yerine içinde depolanır.

Property<TProperty>(String)

Sorgu türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Yeni bir özellik eklenirken, sorgu türü sınıfında aynı ada sahip bir özellik varsa, modele eklenecektir. Sorgu türü sınıfında hiçbir özellik yoksa, yeni bir gölge durumu özelliği eklenecektir. Gölge durumu özelliği, sorgu türü sınıfında karşılık gelen bir özelliği olmayan bir özelliktir. Özelliği için geçerli değer, ChangeTracker sorgu türü sınıfının örneklerine depolanması yerine içinde depolanır.

UsePropertyAccessMode(PropertyAccessMode)

PropertyAccessModeBu sorgu türünün tüm özellikleri için kullanılacak öğesini ayarlar.

Varsayılan olarak, bir kural tarafından bulunursa veya belirtilmişse, genellikle varlıklar veritabanından sorgulandığında, yeni nesneler oluşturulduğunda kullanılır. Özellikler diğer tüm erişimlerde kullanılır. Bu yöntemin çağrılması, bu sorgu türünün tüm özellikleri için enum bölümünde açıklandığı gibi bu davranışı değiştirecek PropertyAccessMode .

Bu yöntemin tüm özellikleri için bu yöntemin çağrılması, bu sorgunun tüm özellikleri için geçersiz kılmaları çağırmak, modelde ayarlanmış herhangi bir erişim modu.

Belirtik Arabirim Kullanımları

IInfrastructure<IMutableModel>.Instance

Sorgu türünün ait olduğu model.

IInfrastructure<InternalEntityTypeBuilder>.Instance

Sorgu türünü yapılandırmak için kullanılan iç oluşturucuyu alır.

Uzantı Metotları

GetInfrastructure<T>(IInfrastructure<T>)

Kullanılarak gizlenen bir özellikten değeri alır IInfrastructure<T> .

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

IInfrastructure<T> , uygulama kodunda kullanılması amaçlanmayan ancak veritabanı sağlayıcıları tarafından yazılan genişletme yöntemlerinde kullanılabilen özellikleri gizlemek için kullanılır.

HasDiscriminator(QueryTypeBuilder)

Bir devralma hiyerarşisi ilişkisel veritabanındaki tek bir tabloyla eşlendiğinde, bir tablodaki her bir satırın hangi sorgu türünde olduğunu tanımlamak için kullanılan ayrıştırıcı sütununu yapılandırır.

HasDiscriminator(QueryTypeBuilder, String, Type)

Bir devralma hiyerarşisi ilişkisel veritabanındaki tek bir tabloyla eşlendiğinde, bir tablodaki her bir satırın hangi sorgu türünde olduğunu tanımlamak için kullanılan ayrıştırıcı sütununu yapılandırır.

HasDiscriminator<TDiscriminator>(QueryTypeBuilder, String)

Bir devralma hiyerarşisi ilişkisel veritabanındaki tek bir tabloyla eşlendiğinde, bir tablodaki her bir satırın hangi sorgu türünde olduğunu tanımlamak için kullanılan ayrıştırıcı sütununu yapılandırır.

ToView(QueryTypeBuilder, String)

Bir ilişkisel veritabanını hedeflerken görünümün eşlendiği görünümü veya tabloyu yapılandırır.

ToView(QueryTypeBuilder, String, String)

Bir ilişkisel veritabanını hedeflerken görünümün eşlendiği görünümü veya tabloyu yapılandırır.

Şunlara uygulanır