试一下强制类型转换
string arg1 = (string)myDB.ExecuteScalar("select name_for_short from matnrInfo where matnr_name='" + this.comboBox6.Text + "'");

解决方案 »

  1.   

    也试过,包括convert.toString()和 (string)...都不行
      

  2.   

    这样试试:
    string arg1="";
    object obj=myDB.ExecuteScalar("select name_for_short from matnrInfo where matnr_name='" + this.comboBox6.Text + "'");if (obj!=null)
    {
       arg1=obj.ToString();
    }
      

  3.   

    调试一下看看myDB.ExecuteScalar("select name_for_short from matnrInfo where matnr_name='" + this.comboBox6.Text + "'")到底是什么东东。
      

  4.   

    hbxtllhx兄弟的方法我也做过了,现在我调试发现
    我申明的string arg1;这行代码我逐步调试时
    编译器直接跳过
    导致后面obj得到结果却没有办法赋值,原因全部处在string arg1上,通过"上下文中不存在arg1"来看,arg1一直没有被分配到内存空间啊!!!
      

  5.   

    重新生成了,再调试 还是跳过...
    没有生成dll也没有调用dll
      

  6.   

    也试过了...呵呵 依然还是这个问题 我郁闷了
    email给MS好了,说不定还给个几万酬劳
      

  7.   

    这样调试一下,看看strSql的sql语句执行一下,看看结果是什么。
    string arg1 = "";
    string strSql = "select name_for_short from matnrInfo where matnr_name='" + this.comboBox6.Text + "'"
    arg1=myDB.ExecuteScalar(strSql).ToString();