Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

MemberInitExpression, classe

Représente l'appel d'un constructeur et l'initialisation d'un ou de plusieurs membres du nouvel objet.

System.Object
  System.Linq.Expressions.Expression
    System.Linq.Expressions.MemberInitExpression

Espace de noms :  System.Linq.Expressions
Assembly :  System.Core (dans System.Core.dll)

public sealed class MemberInitExpression : Expression

Le type MemberInitExpression expose les membres suivants.

  NomDescription
Propriété publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreBindingsObtient les liaisons qui décrivent comment initialiser les membres de l'objet nouvellement créé.
Propriété publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreCanReduceObtient une valeur qui indique si le nœud d'arborescence de l'expression peut être réduit. (Substitue Expression.CanReduce.)
Propriété publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreNewExpressionObtient l'expression qui représente l'appel de constructeur.
Propriété publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreNodeTypeRetourne le type de nœud de cette expression. Les nœuds d'extension doivent retourner Extension lors de la substitution de cette méthode. (Substitue Expression.NodeType.)
Propriété publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreTypeObtient le type statique de l'expression que ce Expression représente. (Substitue Expression.Type.)
Début

  NomDescription
Méthode protégéePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreAcceptDistribue à la méthode de visite spécifique à ce type de nœud. Par exemple, MethodCallExpression appelle VisitMethodCall. (Hérité de Expression.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreEquals(Object)Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreGetHashCodeSert de fonction de hachage par défaut. (Hérité de Object.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreReduceRéduit MemberInitExpression à une expression plus simple. (Substitue Expression.Reduce().)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreReduceAndCheckRéduit le nœud en une expression plus simple. Si CanReduce retourne la valeur true, cela doit retourner une expression valide. Cette méthode peut retourner un autre nœud qui doit lui-même être réduit. (Hérité de Expression.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreReduceExtensionsRéduit l'expression à un type de nœud connu (qui n'est pas un nœud Extension) ou retourne simplement l'expression s'il s'agit d'un type déjà connu. (Hérité de Expression.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreToStringRetourne une représentation textuelle d'Expression. (Hérité de Expression.)
Méthode publiquePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreUpdateCrée une expression semblable à celle-ci, mais utilisant les enfants fournis. Si tous les enfants sont identiques, cette expression est retournée.
Méthode protégéePris en charge par Bibliothèque de classes portablePris en charge dans .NET pour les applications du Windows StoreVisitChildrenRéduit le nœud puis appelle le délégué visiteur sur l'expression réduite. La méthode lève une exception si le nœud n'est pas réductible. (Hérité de Expression.)
Début

Utilisez les méthodes de fabrique MemberInit pour créer un MemberInitExpression.

La valeur de la propriété NodeType d'un MemberInitExpression est MemberInit.

L'exemple suivant crée une MemberInitExpression qui représente l'initialisation des deux membres d'un nouvel objet.


class Animal
{
    public string Species {get; set;}
    public int Age {get; set;}
}

public static void CreateMemberInitExpression()
{
    System.Linq.Expressions.NewExpression newAnimal =
        System.Linq.Expressions.Expression.New(typeof(Animal));

    System.Reflection.MemberInfo speciesMember =
        typeof(Animal).GetMember("Species")[0];
    System.Reflection.MemberInfo ageMember =
        typeof(Animal).GetMember("Age")[0];

    // Create a MemberBinding object for each member
    // that you want to initialize.
    System.Linq.Expressions.MemberBinding speciesMemberBinding =
        System.Linq.Expressions.Expression.Bind(
            speciesMember,
            System.Linq.Expressions.Expression.Constant("horse"));
    System.Linq.Expressions.MemberBinding ageMemberBinding =
        System.Linq.Expressions.Expression.Bind(
            ageMember,
            System.Linq.Expressions.Expression.Constant(12));

    // Create a MemberInitExpression that represents initializing
    // two members of the 'Animal' class.
    System.Linq.Expressions.MemberInitExpression memberInitExpression =
        System.Linq.Expressions.Expression.MemberInit(
            newAnimal,
            speciesMemberBinding,
            ageMemberBinding);

    Console.WriteLine(memberInitExpression.ToString());

    // This code produces the following output:
    //
    // new Animal() {Species = "horse", Age = 12}
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft