QueryTypeBuilder Classe

Définition

Fournit une API simple pour configurer un type de requête.

Les instances de cette classe sont retournées par les méthodes lors de l’utilisation de l’API ModelBuilder et elle n’est pas conçue pour être construite directement dans le code de votre application.

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)
Héritage
QueryTypeBuilder
Dérivé
Implémente
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>

Constructeurs

QueryTypeBuilder(InternalEntityTypeBuilder)

Cette API prend en charge l’infrastructure Entity Framework Core et n’est pas destinée à être utilisée directement à partir de votre code. Cette API pourra être changée ou supprimée dans les versions ultérieures.

Propriétés

Metadata

Type de requête en cours de configuration.

Méthodes

HasAnnotation(String, Object)

Ajoute ou met à jour une annotation sur le type de requête. Si une annotation avec la clé spécifiée dans annotation existe déjà, sa valeur est mise à jour.

HasBaseType(String)

Définit le type de base de ce type de requête dans une hiérarchie d’héritage.

HasBaseType(Type)

Définit le type de base de ce type de requête dans une hiérarchie d’héritage.

HasOne(String, String)

Configure une relation dans laquelle ce type de requête a une référence qui pointe vers un seul instance de l’autre type de la relation.

Notez que l’appel de cette méthode sans paramètre configure explicitement ce côté de la relation pour qu’il n’utilise aucune propriété de navigation, même si une telle propriété existe sur le type d’entité. Si la propriété de navigation doit être utilisée, elle doit être spécifiée.

Après avoir appelé cette méthode, vous devez chaîner un appel à WithMany(String) ou WithOne(String) pour configurer entièrement la relation. L’appel de cette méthode uniquement sans l’appel chaîné ne produit pas de relation valide.

HasOne(Type, String)

Configure une relation dans laquelle ce type de requête a une référence qui pointe vers un seul instance de l’autre type de la relation.

Après avoir appelé cette méthode, vous devez chaîner un appel à WithMany(String) ou WithOne(String) pour configurer entièrement la relation. L’appel de cette méthode uniquement sans l’appel chaîné ne produit pas de relation valide.

HasQueryFilter(LambdaExpression)

Spécifie une expression de prédicat LINQ qui sera automatiquement appliquée à toutes les requêtes ciblant ce type de requête.

Ignore(String)

Exclut la propriété donnée du type de requête. Cette méthode est généralement utilisée pour supprimer des propriétés du type de requête qui ont été ajoutées par convention.

Property(String)

Retourne un objet qui peut être utilisé pour configurer une propriété du type de requête. Si aucune propriété portant le nom donné n’existe, une nouvelle propriété est ajoutée.

Lors de l’ajout d’une nouvelle propriété avec cette surcharge, le nom de la propriété doit correspondre au nom d’une propriété ou d’un champ CLR sur le type de requête. Cette surcharge ne peut pas être utilisée pour ajouter une nouvelle propriété d’état d’ombre.

Property(Type, String)

Retourne un objet qui peut être utilisé pour configurer une propriété du type de requête. Si aucune propriété portant le nom donné n’existe, une nouvelle propriété est ajoutée.

Lors de l’ajout d’une nouvelle propriété, si une propriété portant le même nom existe dans la classe de type de requête, elle est ajoutée au modèle. Si aucune propriété n’existe dans la classe de type de requête, une nouvelle propriété d’état d’ombre est ajoutée. Une propriété d’état d’ombre est une propriété qui n’a pas de propriété correspondante dans la classe de type de requête. La valeur actuelle de la propriété est stockée dans plutôt ChangeTracker que stockée dans les instances de la classe de type de requête.

Property<TProperty>(String)

Retourne un objet qui peut être utilisé pour configurer une propriété du type de requête. Si aucune propriété portant le nom donné n’existe, une nouvelle propriété est ajoutée.

Lors de l’ajout d’une nouvelle propriété, si une propriété portant le même nom existe dans la classe de type de requête, elle est ajoutée au modèle. Si aucune propriété n’existe dans la classe de type de requête, une nouvelle propriété d’état d’ombre est ajoutée. Une propriété d’état d’ombre est une propriété qui n’a pas de propriété correspondante dans la classe de type de requête. La valeur actuelle de la propriété est stockée dans plutôt ChangeTracker que stockée dans les instances de la classe de type de requête.

UsePropertyAccessMode(PropertyAccessMode)

Définit le PropertyAccessMode à utiliser pour toutes les propriétés de ce type de requête.

Par défaut, le champ de stockage, s’il est trouvé par convention ou a été spécifié, est utilisé lorsque de nouveaux objets sont construits, généralement lorsque des entités sont interrogées à partir de la base de données. Les propriétés sont utilisées pour tous les autres accès. L’appel de cette méthode modifie ce comportement pour toutes les propriétés de ce type de requête, comme décrit dans l’énumération PropertyAccessMode .

L’appel de cette méthode remplace pour toutes les propriétés de ce type de requête tout mode d’accès défini sur le modèle.

Implémentations d’interfaces explicites

IInfrastructure<IMutableModel>.Instance

Modèle auquel appartient le type de requête.

IInfrastructure<InternalEntityTypeBuilder>.Instance

Obtient le générateur interne utilisé pour configurer le type de requête.

Méthodes d’extension

GetInfrastructure<T>(IInfrastructure<T>)

Obtient la valeur d’une propriété masquée à l’aide IInfrastructure<T>de .

Cette méthode est généralement utilisée par les fournisseurs de base de données (et d’autres extensions). Il n’est généralement pas utilisé dans le code de l’application.

HasDiscriminator(QueryTypeBuilder)

Configure la colonne de discriminateur utilisée pour identifier le type de requête que chaque ligne d’une table représente lorsqu’une hiérarchie d’héritage est mappée à une seule table dans une base de données relationnelle.

HasDiscriminator(QueryTypeBuilder, String, Type)

Configure la colonne de discriminateur utilisée pour identifier le type de requête que chaque ligne d’une table représente lorsqu’une hiérarchie d’héritage est mappée à une seule table dans une base de données relationnelle.

HasDiscriminator<TDiscriminator>(QueryTypeBuilder, String)

Configure la colonne de discriminateur utilisée pour identifier le type de requête que chaque ligne d’une table représente lorsqu’une hiérarchie d’héritage est mappée à une seule table dans une base de données relationnelle.

ToView(QueryTypeBuilder, String)

Configure la vue ou la table à laquelle la vue est mappée lors du ciblage d’une base de données relationnelle.

ToView(QueryTypeBuilder, String, String)

Configure la vue ou la table à laquelle la vue est mappée lors du ciblage d’une base de données relationnelle.

S’applique à