为了账号安全,请及时绑定邮箱和手机立即绑定

附加信息:无法将类型“void”隐式转换为“object”asp.net MVC 5

附加信息:无法将类型“void”隐式转换为“object”asp.net MVC 5

C#
缥缈止盈 2022-01-09 15:20:11
我用来循环一个 isforeach另一个 is for loop。Foreach 循环用于system.Data和for loop用于数组的数据。我正在尝试匹配两个对象的属性,如果匹配,则将值传递给我的 Oracle 过程以保存数据。这是我的代码: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}当我传递值时,我遇到了这个错误,"Additional information: Cannot implicitly convert type 'void' to 'object'"请帮我解决这个问题。让我知道是否需要更多信息。
查看完整描述

1 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

您对以下行有疑问:

ds = _clsDataAccess.update_menu_permission("00003", ViewBag.comp.ToString(), actv,"N", "00002");

更新方法不返回任何内容。

此外,使用块来包装代码是一种很好的做法。

更新:

你真的不需要:

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");



查看完整回答
反对 回复 2022-01-09
  • 1 回答
  • 0 关注
  • 713 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号