我用來循環(huán)一個(gè) isforeach另一個(gè) is for loop。Foreach 循環(huán)用于system.Data和for loop用于數(shù)組的數(shù)據(jù)。我正在嘗試匹配兩個(gè)對(duì)象的屬性,如果匹配,則將值傳遞給我的 Oracle 過程以保存數(shù)據(jù)。這是我的代碼:foreach (System.Data.DataRow dz in ViewBag.MenuData2.Rows) { ViewBag.comp = @dz["mnud_text"]; for (int i =0; i<data.Length;i++ ) { if (ViewBag.comp == data[i]) { if (@dz["chk"].ToString() == "0" || @dz["umnu_oid"].ToString() == "N") { actv = "1"; } string user_id = data[i]; ds = new DataSet(); ds = _clsDataAccess.update_menu_permission("00003", ViewBag.comp.ToString(), actv,"N", "00002"); } } } 程序是:public void update_menu_permission(string user_id, string menu_id, string actv, string oid, string euser){ conn = new OracleConnection(clsConnection.ConnectionSave); conn.Open(); if (oid == "N") { strComm = "insert into thlhr.t_umnu (oid, umnu_mnud, umnu_user, umnu_actv, iuser, euser) values " + "(:oid, :umnu_mnud, :umnu_user, :umnu_actv, :iuser, :euser)"; cmd = new OracleCommand(strComm, conn); cmd.Parameters.Add("oid", OracleType.VarChar).Value = "UMNU" + user_id.ToUpper() + menu_id.ToUpper(); cmd.Parameters.Add("umnu_mnud", OracleType.VarChar).Value = menu_id; cmd.Parameters.Add("umnu_user", OracleType.VarChar).Value = user_id; cmd.Parameters.Add("umnu_actv", OracleType.VarChar).Value = actv; cmd.Parameters.Add("iuser", OracleType.VarChar).Value = euser; cmd.Parameters.Add("euser", OracleType.VarChar).Value = euser; } else}當(dāng)我傳遞值時(shí),我遇到了這個(gè)錯(cuò)誤,"Additional information: Cannot implicitly convert type 'void' to 'object'"請(qǐng)幫我解決這個(gè)問題。讓我知道是否需要更多信息。
1 回答

慕俠2389804
TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊
您對(duì)以下行有疑問:
ds = _clsDataAccess.update_menu_permission("00003", ViewBag.comp.ToString(), actv,"N", "00002");
更新方法不返回任何內(nèi)容。
此外,使用塊來包裝代碼是一種很好的做法。
更新:
你真的不需要:
ds = new DataSet(); ds = _clsDataAccess.update_menu_permission("00003", ViewBag.comp.ToString(), actv,"N", "00002");
只需致電:
_clsDataAccess.update_menu_permission("00003", ViewBag.comp.ToString(), actv,"N", "00002");
- 1 回答
- 0 關(guān)注
- 750 瀏覽
添加回答
舉報(bào)
0/150
提交
取消