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

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

以下部分为客户调用端

        

 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



以下为服务端:
    

 1 public void Query(int lcid, string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)

你可能感兴趣的:(存储过程)