[英]Operators in C#: Is there something like the “IN” operator in SQL Server?
我在C#代码隐藏中得到了这个语句,我正在检查我的变量是否等于特定的数字,如果是,它将处理一些代码:
try
{
int TaskID = Convert.ToInt32(ddlTask.SelectedValue);
if (TaskID == 157)
{
//lblAccountName.Text = (DT1["CUST_NM"].ToString());
Label2.Text = (DT1["CUST_NM"].ToString());
//lblAccountName.Visible = true;
TBAccountNum.Text = (DT1["CUST_NUM"].ToString());
TBAccountNum.Visible = true;
}
}
catch (Exception ae)
{
Response.Write(ae.Message);
}
工作完美。 但是,现在我想在“if”列表中添加一些其他数字。 在SQL Server中,它将类似于:
if (TaskID IN (157, 158, 159, 160, 162, 165))
有没有办法在C#中做到这一点? 我还在学习,所以如果这有点简单,我道歉。
您可以将项目的集合(例如数组)与LINQ中的Contains()
一起使用:
new[] { 157, 158, 159, 160, 162, 165 }.Contains(TaskID)
写吧 :
if ( new int[]{157, 158, 159, 160, 162, 165}.Contains(TaskID))
....
不要忘记添加以下参考:
using System.Linq;
您还可以使用switch
语句,这将允许其他可能性:
switch (taskId)
{
case 175:
case 176:
case 177:
// code for any of the values above
break;
case 200:
// yet another possibility
break;
default:
// any other value
break;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.