如何解决Remoting无法传输存储过程参数的问题

2016-02-19 17:55 20 1 收藏

有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。图老师即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享如何解决Remoting无法传输存储过程参数的问题吧。

【 tulaoshi.com - Web开发 】

     在项目的开发中使用Remoting,并且所有的数据请求服务都是通过Remoting完成的,所以自然就在其中到了传递参数的存储过程,在业务逻辑中把参数构建好后传递到Remoting服务端,在取出存储过程的参数时报错,具体错误不记得了,自己尝试了各种方法也不行,上网资讯也没有结果,最后变通了一下,问题解决了,例子如下:

  以下部分为客户调用端

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

         

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

   1//先声明参数
   2        private const string PARAM_GUID = "@GUID";
   3        private const string PARAM_VGA_TREEGUID = "@VGATreeGUID";
   4        private const string PARAM_MB_TREEGUID = "@MBTreeGUID";
   5
   6        public static string GetProductTypeByGUID(string GUID, String VGATreeID, String MbTreeID)
   7        {
   8            try
   9            {
  10                int lcID = Thread.CurrentThread.CurrentUICulture.LCID;
  11
  12                BaseModel bt = new BaseModel();
  13
  14                //构建一个哈希表,把参数依次压入
  15                Hashtable parames = new Hashtable();
  16                parames.Add(PARAM_PROGUID, GUID);
  17                parames.Add(PARAM_VGA_TREEGUID, VGATreeID);
  18                parames.Add(PARAM_MB_TREEGUID, MbTreeID);
  19
  20                //把存储过程名称和带参数的哈希表传入
  21                DataAccess.DataBase.RunProcedureDataSet(lcID, "GetProductTypeByTreeID", parames, ref bt);
  22
  23                return bt.Rows[0]["ProductType"].ToString();
  24            }
  25            catch (Exception ex)
  26            {
  27                CommFunction.WriteErrorLogFile("public static string GetProductTypeByGUID(stirng GUID, String VGATreeID, String MbTreeID)出错:" + ex.Message);
  28                return "Other";
  29            }
  30        }
  31
  32

  
  以下为服务端:
      

   1public void Query(int lcid, string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)#region public void Query(int lcid, string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)
   2        // -----------------------------------------------------------------------------------------
   3        public void Query(int lcid, string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)
   4        {
   5            if (!CheckRemotingClient())
   6            {
   7                return;
   8            }
   9            Console.WriteLine(DateTime.Now.ToString() + "调用了Query(" + lcid.ToString() + ", string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)");
  10            int i = cmdHashtable.Count;
  11            //以下构造存储过程参数
  12            SqlParameter[] cmdParms = new SqlParameter[i];
  13            int j = 0;
  14            foreach (DictionaryEntry de in cmdHashtable)
  15            {
  16                cmdParms[j] = new SqlParameter(de.Key.ToString(), de.Value);
  17                j++;
  18            }
  19            Colorful.DBUtility.DbHelperSQL.Query(lcid, SQLString, cmdParms, ref  baseModel);
  20        }
  21        // -----------------------------------------------------------------------------------------
  22        #endregion

  http://www.cnblogs.com/blockhead/archive/2006/08/17/479720.html

来源:http://www.tulaoshi.com/n/20160219/1616385.html

延伸阅读
--删除 drop procedure if exists up_common_select --创建 CREATE PROCEDURE `up_common_select` ( in t_name varchar(50) ) begin declare v_sql varchar(500); set v_sql= concat('select * from ',t_name); select v_sql; --注意:prepare...
标签: 电脑入门
有的朋友在恢复系统之后,遇到了QQ.exe-无法找到组件的问题。一般来说,无法找到组件是运行程序(比如大型网络游戏,单机游戏,杀毒软件等等) 时,运行文件夹中的重要组件用来启动软件,但组件丢失或不可用,便无法打开。显示出****无法找到组件这样的对话框,这就是无法找到组件。希望以上的内容对您有所帮助,这里是比科尔下载站,感谢您的支...
想必很多人都有过落枕的经历,大多数人应该都知道落枕是很痛苦的。早上起床后感觉莫名其妙的脖子疼痛,让人抓狂。那么该如何治疗落枕最有效呢?我们要懂得一些生活方法,如果不幸落枕,能抓紧时间自己治疗,下面就一起来看看落枕的治疗方法有哪些吧。 一般落枕经1~2次治疗即可治愈 有的患者是在颈部长期病变的基础上产生...
标签: 生活常识
如何解决晕车的问题 如何解决晕车的问题 第一,胃复安:胃复安片,晕车严重时可服2片,儿童剂量酌减,于上车前0~5分钟吞服,可防晕车。行程2小时以上又出现晕车症状者,可再服片。途中临时服药者应在服药后站立5~20分钟后坐下,以便药物吸收。此法有效率达97%,且无其它晕车片引起的口干、头晕等副作用。 第二,鲜姜:行驶途中将鲜...
标签: 问题肌肤
25岁正是干劲十足的年龄,同时也是肌肤问题层出不穷的年龄,黑眼圈、毛孔粗大、眼角细纹、黑头等等各种各样的肌肤问题都同时围攻我们,是束手无策的投降,还是披荆斩棘的来一场肌肤之战?相信很多人会毫不犹豫的选择后者。那么该如何解决这些肌肤问题呢? 想要解决这些肌肤问题,首先一定要了解这些问题形成的根本原因,知己知彼方能百战不...

经验教程

253

收藏

96
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部