if (myread.Read())
{
return myread["username"].ToString();
}
else
{
return "";
}
不管怎么样,都return了,方法都结束了
你的下一个语句当然是无法访问了

解决方案 »

  1.   

    前面都已经Return了,当然访问不到啦!
      

  2.   

    if (myread.Read())
    {
    return myread["username"].ToString();
    }
    else
    {
    return "";
    }
    myread.Close();<-- 检测到无法访问的代码
    if else 程序块中都返回了,myread.close根本不会执行
    应该用
    try{}
    catch()
    finally
    {
       myread.Close();
    }
      

  3.   

    修改如下:
    string result= "";
    if (myread.Read())
    {
    result = myread["username"].ToString();
    }
    return result;
      

  4.   

    因为你的代码在执行了 if或者else之后就return了,后面的代码当然不会被执行了。
    把最后的if ...else 语句改成这样:string retStr="";
    if (myread.Read())
    {
    retStr=myread["username"].ToString();
    }
    myread.Close();
    return retStr;