三元运算式条件判断 ? 条件成立时需要运行的表达式A : 条件不成立时需要运行的表达式Bhttp://msdn.microsoft.com/zh-tw/library/zakwfxx4(VS.80).aspx

解决方案 »

  1.   

    dr.IsNull(0)是否为true,如果是strItem =""如不是strItem =dr[0].ToString();
    后面同理
      

  2.   

    strItem = dr.IsNull(0) ? "" : dr[0].ToString();
    这句等于下面的这个
    if(dr.IsNull(0)==true)
    {
        strItem="";
    }
    else
    {
        strItem=dr[0].ToSTring();
    }其它的,就不用解释了吧!
      

  3.   

    相当于 VB.NET中的
    IF xxx 成立 THEN
       运行表达式A
    ELSE
       运行表达式B
    End if或者
    IIF(XXX条件成立?,语句A,语句B)
      

  4.   

    可否根据具体问题解释下。小弟比较笨。另外dr.IsNull(0)是否为true,是怎么判断的?
    foreach(DataRow dr in dt.Rows)
    {
    strItem = dr.IsNull(0) ? "" : dr[0].ToString();
    strSeq = dr.IsNull(5) ? "1" : Convert.ToString((Convert.ToInt32(dr[5].ToString()) + 1));
    }
    可否逐句解释一下。谢谢
      

  5.   


    bool isRight=3>2?true:false;
      

  6.   

    如果前面的为RTUE 为什么用“”来赋值呢?
      

  7.   

    因为strItem 可能是string 类型的 所以要赋“”
    你应该问写代码的人
    谁知道你这断代码是要做什么啊 
      

  8.   

    dr.isNull(0)就是判断查询出来的值的第一个是否为空,即dr的0行(列)isNUll(是否为空)
    ? "" : dr[0].ToString();
    这个表示,如果dr.isNull(0)的值为空,则trItem="",如果不为空,则trItem=dr[0].tostring();(就是说等于dr[0(行或列的值)]),tostring 就是转换成string类型。
    下面一行跟上面一行意思一样,
    就是:?前面就判断两个值是否相等,如果为true(就是相等)就等于“:”前面的值,如果为false,就等于“:”后面的值
    foreach 是个循环,就是循环从dt.Rows中取出每一行来、、、
      

  9.   

    条件运算符 (?:) 根据布尔型表达式的值返回两个值中的一个。条件运算符的格式如下 
    condition ? first_expression : second_expression;
    可空类型??