-3

プログラムのデバッグ中に、「System.Data.DataSet」タイプのオブジェクトを「MyDatabase.DataSet」タイプにキャストできないというエラーが表示されます。

何をする必要がありますか

private void btnLogin_Click(object sender, System.EventArgs e)
   {
    string strUser;
    string strPass;
    string sMsg = "";

    strUser = txtUserID.Text ;
    strPass = txtPassword.Text ;

    DataSet o_Find = new DataSet ();
    Users oUsers = new Users();

    try
    {
        o_Find = (DataSet)oUsers.FindData(strUser,strPass);
        sMsg = "Welcome " + o_Find.Tables ["Login"].Rows[0]["UserName"].ToString ();

        switch (strUser)
        {
            case "Admissions":
                frmAdmissions admitForm = new frmAdmissions ();
                admitForm.Visible = true;
                admitForm.Activate();
                break;
            case "Admin":
            case "Nurse":
            case "Doctor":
                frmMenu menuForm = new frmMenu ();
                menuForm.oCurrent.UserName = strUser;
                menuForm.Visible = true;
                menuForm.Activate();
                menuForm.SelectUser();
                break;
        }

    }
4

1 に答える 1

0

問題は次の行にあると思います。

o_Find = (DataSet)oUsers.FindData(strUser,strPass);

コードのどこかで DataSet の意味をオーバーライドしたようです。MyDatabase.DataSet(たとえば、type とは何ですか?)

これで問題が解決するはずです:

o_Find = (System.Data.DataSet)oUsers.FindData(strUser,strPass);
于 2013-03-05T03:43:32.680 に答える