◎在项目的开发中使用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 以下为服务端: 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 |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-30 01:25 , Processed in 0.230882 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.