异常抛出位置0没有行

Nim*_*sad 1 .net c# c#-4.0

我想检查用户是否有效.我给了我一个例外,当用户有效时它没有问题,但是如果用户无效则有一些问题.

例外情况是:位置0没有行

这是代码的一部分,

 public bool CheckUserExistAndReporter(string user)
{
    int reporterDnnId = -1;
    SMSFunctionController mysms = new SMSFunctionController();
    DataSet uds = mysms.GetUsersUnitByUserName(user);

    reporterDnnId = Convert.ToInt32(uds.Tables[0].Rows[0]["DnnUserID"]);
    if (reporterDnnId > 0)
    {
        bool isValidUser = true;
        return isValidUser;
    }
    //else
    //{
        //bool isValidUser =false;
        //return isValidUser;
   // }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

然后我在这里打电话给那个人.

                if (!CheckUserExistAndReporter(user))
                {
                    ErrorLog(messageIn);
                    msgOut = "ugyldig Bruker";//Invalid User.

                }
Run Code Online (Sandbox Code Playgroud)

什么是错误?

muh*_*hif 6

阅读完所有答案后,我认为这个答案比其他人好,在你的代码中加入以下If.

if(uds != null && uds.Tables.Count > 0 && uds.Tables[0].Rows.Count>0)
Run Code Online (Sandbox Code Playgroud)