使用“And”运算符比较三个变量

时间:2017-03-10 22:03:52

标签: c# sql-server

if (dr["programmeCode"].ToString() == (combo_Programme.ToString())) &= (dr["Actions_ProgrammeDerivedCode"].ToString()) = null;

任何人都可以帮助解释为什么我的“和”表达式“& =”(或“&&”)在上述表达式中不起作用吗?

2 个答案:

答案 0 :(得分:1)

你可以做以下事情。

if (dr["programmeCode"].ToString() == combo_Programme.ToString() 
        && string.IsNullOrEmpty(dr["Actions_ProgrammeDerivedCode"].ToString()))
{
}

答案 1 :(得分:1)

我不确定你要做什么,也不是电脑。我假设你的代码都是逻辑陈述的一部分。

&=为其左侧的变量赋值。所以在你的情况下,你会尝试将(dr [“Actions_ProgrammeDerivedCode”]。ToString()分配给if语句!

您打算使用&&运算符,然后您可能会注意到您的括号从逻辑测试中排除了该语句。您需要添加更多括号并将= null更改为== null,否则它还会尝试分配:

if ((dr["programmeCode"].ToString() == combo_Programme.ToString())
   && (dr["Actions_ProgrammeDerivedCode"].ToString() == null)) { 
       do something...
   }

以下是有关变量赋值的一些有用文档的链接:

https://msdn.microsoft.com/en-us/library/e669ax02.aspx

以下是有关if语句的一些有用文档的链接:

https://msdn.microsoft.com/en-us/library/5011f09h.aspx