在C#中,如何在IF语句中使用Or?

在C#中,如何在IF语句中使用Or?,c#,C#,我试图创建一个if语句,如果任何条件为真,它将执行一个操作。我需要测试的项目是八个文本框的文本值。我现在看到的是以下内容,它给我的错误是“运算符”| |“不能应用于'string'和'string'类型的操作数 如果有人知道我应该如何使用这个If语句,或者用一种简单的方法检查在已知位置是否存在.ini文件。这两种方法都适用于我。您需要使用相等运算符=而不是赋值= if (textbox1.text == "" || textbox2.text == "" || ...... and so on)

我试图创建一个if语句,如果任何条件为真,它将执行一个操作。我需要测试的项目是八个文本框的文本值。我现在看到的是以下内容,它给我的错误是“运算符”| |“不能应用于'string'和'string'类型的操作数


如果有人知道我应该如何使用这个If语句,或者用一种简单的方法检查在已知位置是否存在.ini文件。这两种方法都适用于我。

您需要使用相等运算符
=
而不是赋值
=

if (textbox1.text == "" || textbox2.text == "" || ...... and so on)
您的
textbox1.text=”“
textbox1.text
的值设置为空字符串,并将其作为赋值结果返回。因此,您试图在两个字符串上使用布尔or(
|

textbox1.text == "" ||
注意双=符号

如前所述,您的问题将通过首先为每个变量分配空字符串,然后将OR应用于这些变量来进行计算,因此在计算布尔值时,它看起来是这样的

if ("" || "" || "" ... etc)
OR运算符不处理字符串。请注意,如果你不小心,那么你会悄悄地打破这条规则

if(x=true | | y=false)
的计算结果为
if(true | | false)
,并且不会在C#中给您如此及时的编译器警告

,如果您正在检查一个值是否相等-您需要使用双等号

您的代码应该如下所示:

if (textbox1.text == "" || textbox2.text == "" || ...... and so on)
String.IsNullOrEmpty()
将为您返回一个布尔值:


…并且,正如其他人所说,使用“==”来测试相等性。

System.IO.File.Exists(path),返回一个布尔值

这与问题有什么关系?问题的最后一点:“…或者一种检查已知位置是否存在.ini文件的简单方法。”
if (textbox1.text == "" || textbox2.text == "" || ...... and so on)