为什么这个C#If语句找不到空值?

Jim*_*Del 0 c# if-statement

true当找不到注册表项时,下面的if语句永远不会解析.我在这里错过了什么?

if ((Convert.ToString(Registry.GetValue(key, "EnableLinkedConnections", "")) == "0") ||
    (Convert.ToString(Registry.GetValue(key, "EnableLinkedConnections", "")) == null))
Run Code Online (Sandbox Code Playgroud)

Sti*_*ack 8

根据MSDN文档,您传入的第三个参数是未找到密钥时返回给您的值.

因为您指定了""(String.Empty) - 这是您应该检查的值,而不是null或"0".


Ben*_*den 5

Convert.ToString on null作为对象返回"".试试string.IsNullOrEmpty().