日期:2014-05-18  浏览次数:20498 次

问一个三木运算符问题
C# code

protected void User_Qx()
    {
        string User_Qxs = Session["UserQx"].ToString();
        User_Qxs.Contains("网站版权信息") ? this.网站版权信息.Visible=true : this.网站版权信息.Visible=false;
    } 



这样写不行吗?
报错了
编译器错误消息: CS0201: 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句



------解决方案--------------------
User_Qxs.Contains("网站版权信息") ? this.网站版权信息.Visible=true : this.网站版权信息.Visible=false;
不行,换成if else 或者switch
------解决方案--------------------
C# code

  this.网站版权信息.Visible=User_Qxs.Contains("网站版权信息")?true :false;

------解决方案--------------------
,,,,,变量名怎么是中文,
------解决方案--------------------
C# code

            string s = "aaaa";
            button1.Visible = s.Contains("a") ? true : false;

------解决方案--------------------
this.网站版权信息.Visible=User_Qxs.Contains("网站版权信息") ? true : false;
这样就OK了。
你的写法超出了 表达式的规则范围。
只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句
------解决方案--------------------
直接 this.网站版权信息.Visible=User_Qxs.Contains("网站版权信息") 不行吗?
------解决方案--------------------
探讨

C# code

string s = "aaaa";
button1.Visible = s.Contains("a") ? true : false;

------解决方案--------------------
探讨

直接 this.网站版权信息.Visible=User_Qxs.Contains("网站版权信息") 不行吗?