无法在IF语句中隐式转换类型字节为bool

时间:2017-06-22 08:33:06

标签: c#

我有以下代码来获取我的IP地址的第三个八位字节

//这些是在某个类的某个地方声明的全局变量

public static string HostName = Dns.GetHostName();//get HOSTNAME
public static string myIP = Dns.GetHostEntry(GlobalVars.HostName).AddressList[3].ToString();// Get the IP
public static byte myIP3 = IPAddress.Parse(myIP).GetAddressBytes()[2];//Gets third octet of IP

然后我想创建一个IF语句,如下所示,但收到该错误:

if (GlobalVars.myIP3= 92){
GlobalVars.Sitecode = "SiteA"

}

2 个答案:

答案 0 :(得分:3)

您正在分配值,请使用条件if(GlobalVars.myIP3 == 92 )

答案 1 :(得分:1)

if (GlobalVars.myIP3= 92){

是将值92赋值给变量myIP。在您的案例92中,分配操作的结果是指定的值。但是if - 语句需要一个布尔值,92肯定不是。您想要的是一个比较,它由加倍=表示:

if (GlobalVars.myIP3 == 92){