Expression.Or Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membuat yang BinaryExpression mewakili operasi bitwise OR
.
Overload
Or(Expression, Expression) |
Membuat yang BinaryExpression mewakili operasi bitwise |
Or(Expression, Expression, MethodInfo) |
Membuat yang BinaryExpression mewakili operasi bitwise |
Or(Expression, Expression)
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
Membuat yang BinaryExpression mewakili operasi bitwise OR
.
public:
static System::Linq::Expressions::BinaryExpression ^ Or(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression Or (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member Or : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function Or (left As Expression, right As Expression) As BinaryExpression
Parameter
- left
- Expression
Untuk Expression mengatur properti sama Left dengan.
- right
- Expression
Untuk Expression mengatur properti sama Right dengan.
Mengembalikan
BinaryExpression yang memiliki NodeType properti yang sama dengan Or dan Left properti dan Right diatur ke nilai yang ditentukan.
Pengecualian
left
atau right
adalah null
.
Operator bitwise OR
tidak didefinisikan untuk left
. Ketik dan right
. Jenis.
Contoh
Contoh kode berikut menunjukkan cara membuat ekspresi yang mewakili operasi OR logis.
// Add the following directive to your file:
// using System.Linq.Expressions;
// This expression perfroms a logical OR operation
// on its two arguments. Both arguments must be of the same type,
// which can be boolean or integer.
Expression orExpr = Expression.Or(
Expression.Constant(true),
Expression.Constant(false)
);
// Print out the expression.
Console.WriteLine(orExpr.ToString());
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda<Func<bool>>(orExpr).Compile()());
// This code example produces the following output:
//
// (True Or False)
// True
' Add the following directive to your file:
' Imports System.Linq.Expressions
' This expression perfroms a logical OR operation
' on its two arguments. Both arguments must be of the same type,
' which can be Boolean or integer.
Dim orExpr As Expression = Expression.Or(
Expression.Constant(True),
Expression.Constant(False)
)
' Print the expression.
Console.WriteLine(orExpr.ToString())
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda(Of Func(Of Boolean))(orExpr).Compile()())
' This code example produces the following output:
'
' (True Or False)
' True
Keterangan
Yang dihasilkan BinaryExpression memiliki properti yang Method diatur ke metode penerapan. Properti Type diatur ke jenis simpul. Jika simpul diangkat, IsLifted properti dan IsLiftedToNull keduanya true
adalah . Jika tidak, mereka adalah false
. Properti Conversion adalah null
.
Informasi berikut menjelaskan metode penerapan, jenis node, dan apakah node diangkat.
Metode Penerapan
Aturan berikut menentukan metode penerapan untuk operasi:
Type Jika properti dari salah satu
left
atauright
mewakili jenis yang ditentukan pengguna yang membebani operator bitwiseOR
, MethodInfo yang mewakili metode tersebut adalah metode penerapan.Jika tidak, jika
left
. Ketik danright
. Jenisnya adalah jenis integral atau Boolean, metode penerapannya adalahnull
.
Jenis Node dan Diangkat versus Non-Lifted
Jika metode penerapan bukan null
:
Jika
left
. Ketik danright
. Jenis dapat ditetapkan ke jenis argumen yang sesuai dari metode penerapan, simpul tidak diangkat. Jenis simpul adalah jenis pengembalian dari metode penerapan.Jika dua kondisi berikut terpenuhi, simpul diangkat dan jenis simpul adalah jenis yang dapat diubah ke null yang sesuai dengan jenis pengembalian metode penerapan:
left
. Ketik danright
. Jenis adalah kedua jenis nilai yang setidaknya satu dapat diubah ke null dan jenis yang tidak dapat diubah ke null yang sesuai sama dengan jenis argumen yang sesuai dari metode penerapan.Jenis pengembalian metode penerapan adalah jenis nilai yang tidak dapat diubah ke null.
Jika metode penerapan adalah null
:
Jika
left
. Ketik danright
. Jenis keduanya tidak dapat diubah ke null, simpul tidak diangkat. Jenis simpul adalah jenis hasil operator bitwiseOR
yang telah ditentukan sebelumnya.Jika
left
. Ketik danright
. Jenis keduanya dapat diubah ke null, simpul diangkat. Jenis simpul adalah jenis nullable yang sesuai dengan jenis hasil operator bitwiseOR
yang telah ditentukan sebelumnya.
Berlaku untuk
Or(Expression, Expression, MethodInfo)
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
Membuat yang BinaryExpression mewakili operasi bitwise OR
.
public:
static System::Linq::Expressions::BinaryExpression ^ Or(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression Or (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression Or (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member Or : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function Or (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression
Parameter
- left
- Expression
Untuk Expression mengatur properti sama Left dengan.
- right
- Expression
Untuk Expression mengatur properti sama Right dengan.
- method
- MethodInfo
A MethodInfo untuk mengatur Method properti sama dengan.
Mengembalikan
BinaryExpression yang memiliki NodeType properti yang sama dengan Or dan Leftproperti , , Rightdan Method diatur ke nilai yang ditentukan.
Pengecualian
left
atau right
adalah null
.
method
bukan null
dan metode yang diwakilinya mengembalikan void
, bukan static
(Shared
dalam Visual Basic), atau tidak mengambil tepat dua argumen.
method
adalah null
dan operator bitwise OR
tidak didefinisikan untuk left
. Ketik dan right
. Jenis.
Keterangan
Yang dihasilkan BinaryExpression memiliki properti yang Method diatur ke metode penerapan. Properti Type diatur ke jenis simpul. Jika simpul diangkat, IsLifted properti dan IsLiftedToNull keduanya true
adalah . Jika tidak, mereka adalah false
. Properti Conversion adalah null
.
Informasi berikut menjelaskan metode penerapan, jenis node, dan apakah node diangkat.
Metode Penerapan
Aturan berikut menentukan metode penerapan untuk operasi:
Jika
method
tidaknull
dan mewakili metode non-void,static
(Shared
dalam Visual Basic) yang mengambil dua argumen, itu adalah metode penerapan.Jika tidak, jika Type properti dari salah satu
left
atauright
mewakili jenis yang ditentukan pengguna yang membebani operator bitwiseOR
, MethodInfo yang mewakili metode tersebut adalah metode penerapan.Jika tidak, jika
left
. Ketik danright
. Jenisnya adalah jenis integral atau Boolean, metode penerapannya adalahnull
.
Jenis Node dan Diangkat versus Non-Lifted
Jika metode penerapan bukan null
:
Jika
left
. Ketik danright
. Jenis dapat ditetapkan ke jenis argumen yang sesuai dari metode penerapan, simpul tidak diangkat. Jenis simpul adalah jenis pengembalian dari metode penerapan.Jika dua kondisi berikut terpenuhi, simpul diangkat dan jenis simpul adalah jenis yang dapat diubah ke null yang sesuai dengan jenis pengembalian metode penerapan:
left
. Ketik danright
. Jenis adalah kedua jenis nilai yang setidaknya satu dapat diubah ke null dan jenis yang tidak dapat diubah ke null yang sesuai sama dengan jenis argumen yang sesuai dari metode penerapan.Jenis pengembalian metode penerapan adalah jenis nilai yang tidak dapat diubah ke null.
Jika metode penerapan adalah null
:
Jika
left
. Ketik danright
. Jenis keduanya tidak dapat diubah ke null, simpul tidak diangkat. Jenis simpul adalah jenis hasil operator bitwiseOR
yang telah ditentukan sebelumnya.Jika
left
. Ketik danright
. Jenis keduanya dapat diubah ke null, simpul diangkat. Jenis simpul adalah jenis nullable yang sesuai dengan jenis hasil operator bitwiseOR
yang telah ditentukan sebelumnya.