Aracılığıyla paylaş


Expression.New Yöntem

Tanım

NewExpression oluşturur.

Aşırı Yüklemeler

Name Description
New(ConstructorInfo)

Bağımsız değişken içermeyen belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

New(Type)

Belirtilen türün parametresiz oluşturucusunun çağrıldığını temsil eden bir NewExpression oluşturur.

New(ConstructorInfo, IEnumerable<Expression>)

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

New(ConstructorInfo, Expression[])

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur. Oluşturucu tarafından başlatılan alanlara erişen üyeler belirtilir.

New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur. Oluşturucu tarafından başlatılan alanlara erişen üyeler bir dizi olarak belirtilir.

New(ConstructorInfo)

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Bağımsız değişken içermeyen belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

public:
 static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor);
static member New : System.Reflection.ConstructorInfo -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo) As NewExpression

Parametreler

constructor
ConstructorInfo

ConstructorInfo özelliğini eşittir Constructor olarak ayarlamak için.

Döndürülenler

NewExpression özelliğine NodeType eşit New ve Constructor özelliği belirtilen değere ayarlanmış bir.

Özel durumlar

constructor, null'e eşittir.

Temsil eden constructor oluşturucunun en az bir parametresi vardır.

Açıklamalar

Elde ArgumentsNewExpression edilen ve Members özellikleri boş koleksiyonlardır. özelliği, Type tarafından constructortemsil edilen oluşturucunun bildirim türünü temsil eder.

Şunlara uygulanır

New(Type)

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Belirtilen türün parametresiz oluşturucusunun çağrıldığını temsil eden bir NewExpression oluşturur.

public:
 static System::Linq::Expressions::NewExpression ^ New(Type ^ type);
public static System.Linq.Expressions.NewExpression New(Type type);
static member New : Type -> System.Linq.Expressions.NewExpression
Public Shared Function New (type As Type) As NewExpression

Parametreler

type
Type

Type Bağımsız değişken içermeyen bir oluşturucuya sahip olan.

Döndürülenler

NewExpression özelliğine NewNodeType eşit ve Constructor özelliği belirtilen tür için parametresiz oluşturucuyu temsil eden değerine ayarlanmış ConstructorInfo bir.

Özel durumlar

type, null'e eşittir.

Temsil eden type tür parametresiz bir oluşturucuya sahip değildir.

Örnekler

Aşağıdaki örnek, oluşturucuyu New(Type) parametresiz çağırarak sözlük nesnesinin yeni bir örneğini oluşturmayı temsil eden bir oluşturmak NewExpression için yönteminin nasıl kullanılacağını gösterir.

// Create a NewExpression that represents constructing
// a new instance of Dictionary<int, string>.
System.Linq.Expressions.NewExpression newDictionaryExpression =
    System.Linq.Expressions.Expression.New(typeof(Dictionary<int, string>));

Console.WriteLine(newDictionaryExpression.ToString());

// This code produces the following output:
//
// new Dictionary`2()
' Create a NewExpression that represents constructing
' a new instance of Dictionary(Of Integer, String).
Dim newDictionaryExpression As System.Linq.Expressions.NewExpression = _
    System.Linq.Expressions.Expression.[New]( _
        Type.GetType("System.Collections.Generic.Dictionary`2[System.Int32, System.String]"))

Console.WriteLine(newDictionaryExpression.ToString())

' This code produces the following output:
'
' new Dictionary`2()

Açıklamalar

parametresi, type parametresiz bir oluşturucuya sahip bir türü temsil etmelidir.

Elde ArgumentsNewExpression edilen ve Members özellikleri boş koleksiyonlardır. Type özelliğine typeeşittir.

Şunlara uygulanır

New(ConstructorInfo, IEnumerable<Expression>)

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

public:
 static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression)) As NewExpression

Parametreler

constructor
ConstructorInfo

ConstructorInfo özelliğini eşittir Constructor olarak ayarlamak için.

arguments
IEnumerable<Expression>

IEnumerable<T> Koleksiyonu doldurmak Arguments için kullanılacak nesneleri içerenExpression.

Döndürülenler

NewExpression özelliğine NewNodeType eşit ve ve ArgumentsConstructor özellikleri belirtilen değerlere ayarlanmış bir.

Özel durumlar

constructor, null'e eşittir.

-veya-

öğesinin arguments öğesidir null.

parametresi, arguments oluşturucunun temsil eden constructor parametre sayısıyla aynı sayıda öğe içermez.

-veya-

Type öğesinin arguments özelliği, oluşturucunun temsil eden constructor ilgili parametresinin türüne atanamaz.

Açıklamalar

parametresi, arguments tarafından constructortemsil edilen oluşturucunun parametre sayısıyla aynı sayıda öğe içermelidir. ise argumentsnullboş kabul edilir ve Arguments sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur.

sonucunun TypeNewExpression özelliği, tarafından constructortemsil edilen oluşturucunun bildirim türünü temsil eder. Members özelliği boş bir koleksiyondur.

Şunlara uygulanır

New(ConstructorInfo, Expression[])

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur.

public:
 static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, ... cli::array <System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, params System.Linq.Expressions.Expression[] arguments);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, params System.Linq.Expressions.Expression[]? arguments);
static member New : System.Reflection.ConstructorInfo * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, ParamArray arguments As Expression()) As NewExpression

Parametreler

constructor
ConstructorInfo

ConstructorInfo özelliğini eşittir Constructor olarak ayarlamak için.

arguments
Expression[]

Koleksiyonu doldurmak Arguments için kullanılacak bir nesne dizisiExpression.

Döndürülenler

NewExpression özelliğine NewNodeType eşit ve ve ArgumentsConstructor özellikleri belirtilen değerlere ayarlanmış bir.

Özel durumlar

constructor, null'e eşittir.

-veya-

öğesinin arguments öğesidir null.

uzunluğu arguments , oluşturucunun temsil eden constructor parametre sayısıyla eşleşmektedir.

-veya-

Type öğesinin arguments özelliği, oluşturucunun temsil eden constructor ilgili parametresinin türüne atanamaz.

Açıklamalar

parametresi, arguments tarafından constructortemsil edilen oluşturucunun parametre sayısıyla aynı sayıda öğe içermelidir. ise argumentsnullboş kabul edilir ve Arguments sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur.

sonucunun TypeNewExpression özelliği, tarafından constructortemsil edilen oluşturucunun bildirim türünü temsil eder. Members özelliği boş bir koleksiyondur.

Şunlara uygulanır

New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur. Oluşturucu tarafından başlatılan alanlara erişen üyeler belirtilir.

public:
 static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments, System::Collections::Generic::IEnumerable<System::Reflection::MemberInfo ^> ^ members);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments, System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo> members);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")]
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo>? members);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo>? members);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * seq<System.Reflection.MemberInfo> -> System.Linq.Expressions.NewExpression
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")>]
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * seq<System.Reflection.MemberInfo> -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression), members As IEnumerable(Of MemberInfo)) As NewExpression

Parametreler

constructor
ConstructorInfo

ConstructorInfo özelliğini eşittir Constructor olarak ayarlamak için.

arguments
IEnumerable<Expression>

IEnumerable<T> Koleksiyonu doldurmak Arguments için kullanılacak nesneleri içerenExpression.

members
IEnumerable<MemberInfo>

IEnumerable<T> Koleksiyonu doldurmak Members için kullanılacak nesneleri içerenMemberInfo.

Döndürülenler

NewExpression ve değerine eşit NewNodeType olan ve ConstructorArgumentsMembers özellikleri belirtilen değerlere ayarlanmış olan bir.

Öznitelikler

Özel durumlar

constructor, null'e eşittir.

-veya-

öğesinin arguments öğesidir null.

-veya-

öğesinin members öğesidir null.

parametresi, arguments oluşturucunun temsil eden constructor parametre sayısıyla aynı sayıda öğe içermez.

-veya-

Type öğesinin arguments özelliği, oluşturucunun temsil eden constructor ilgili parametresinin türüne atanamaz.

-veya-

parametresi ile members aynı sayıda öğeye argumentssahip değil.

-veya-

öğesinin öğesi, arguments öğesine karşılık gelen öğesi memberstarafından temsil edilen üye türüne atanamayan bir türü temsil eden bir özelliğe sahiptirType.

Açıklamalar

parametresi, arguments tarafından constructortemsil edilen oluşturucunun parametre sayısıyla aynı sayıda öğe içermelidir. ise argumentsnullboş kabul edilir ve Arguments sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur.

ise membersnull, Members sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur. değilsemembers, öğesi ile aynı sayıda öğeye arguments sahip olmalı ve her öğe olmamalıdırnull.null öğesinin members her öğesi, tarafından constructortemsil edilen oluşturucunun bildirim türünde bir örnek üyesini temsil eden bir veya FieldInfoMethodInfo olmalıdırPropertyInfo. Bir özelliği temsil ediyorsa, özelliğin bir get erişimcisi olmalıdır. öğesinin arguments her öğesi için karşılık gelen öğesi, members öğesinin temsil ettiği üye türüne atanabilir bir türü temsil eden members bir özelliğe sahip Type olmalıdır.

sonucunun TypeNewExpression özelliği, temsil eden oluşturucunun constructor bildirim türünü temsil eder.

Şunlara uygulanır

New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])

Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs
Kaynak:
NewExpression.cs

Belirtilen bağımsız değişkenlerle belirtilen oluşturucunun çağrıldığını temsil eden bir NewExpression oluşturur. Oluşturucu tarafından başlatılan alanlara erişen üyeler bir dizi olarak belirtilir.

public:
 static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments, ... cli::array <System::Reflection::MemberInfo ^> ^ members);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments, params System.Reflection.MemberInfo[] members);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")]
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, params System.Reflection.MemberInfo[]? members);
public static System.Linq.Expressions.NewExpression New(System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, params System.Reflection.MemberInfo[]? members);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * System.Reflection.MemberInfo[] -> System.Linq.Expressions.NewExpression
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")>]
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * System.Reflection.MemberInfo[] -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression), ParamArray members As MemberInfo()) As NewExpression

Parametreler

constructor
ConstructorInfo

ConstructorInfo özelliğini eşittir Constructor olarak ayarlamak için.

arguments
IEnumerable<Expression>

IEnumerable<T> Koleksiyonu doldurmak Arguments için kullanılacak nesneleri içerenExpression.

members
MemberInfo[]

Koleksiyonu doldurmak Members için kullanılacak bir nesne dizisiMemberInfo.

Döndürülenler

NewExpression ve değerine eşit NewNodeType olan ve ConstructorArgumentsMembers özellikleri belirtilen değerlere ayarlanmış olan bir.

Öznitelikler

Özel durumlar

constructor, null'e eşittir.

-veya-

öğesinin arguments öğesidir null.

-veya-

öğesinin members öğesidir null.

parametresi, arguments oluşturucunun temsil eden constructor parametre sayısıyla aynı sayıda öğe içermez.

-veya-

Type öğesinin arguments özelliği, oluşturucunun temsil eden constructor ilgili parametresinin türüne atanamaz.

-veya-

parametresi ile members aynı sayıda öğeye argumentssahip değil.

-veya-

öğesinin öğesi, arguments öğesine karşılık gelen öğesi memberstarafından temsil edilen üye türüne atanamayan bir türü temsil eden bir özelliğe sahiptirType.

Açıklamalar

parametresi, arguments tarafından constructortemsil edilen oluşturucunun parametre sayısıyla aynı sayıda öğe içermelidir. ise argumentsnullboş kabul edilir ve Arguments sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur.

ise membersnull, Members sonuçta NewExpression elde edilen özelliği boş bir koleksiyondur. değilsemembers, öğesi ile aynı sayıda öğeye arguments sahip olmalı ve her öğe olmamalıdırnull.null öğesinin members her öğesi, tarafından constructortemsil edilen oluşturucunun bildirim türünde bir örnek üyesini temsil eden bir veya FieldInfoMethodInfo olmalıdırPropertyInfo. Bir özelliği temsil ederse, özelliğin ilişkili alanın değerini alabilmesi gerekir. öğesinin arguments her öğesi için karşılık gelen öğesi, members öğesinin temsil ettiği üye türüne atanabilir bir türü temsil eden members bir özelliğe sahip Type olmalıdır.

sonucunun TypeNewExpression özelliği, temsil eden oluşturucunun constructor bildirim türünü temsil eder.

Şunlara uygulanır