Remoting используется при разработке проекта, и все службы запроса данных выполняются через Remoting, поэтому, естественно, существует хранимая процедура для передачи параметров. После того, как параметры созданы в бизнес-логике, они передаются на сервер Remoting, а затем. Произошла ошибка при настройке параметров хранимой процедуры. Я не помню конкретную ошибку. Я пробовал разные методы, но это не сработало. Я также искал в Интернете и не нашел результатов. Наконец, я решил эту проблему. и проблема была решена. Пример следующий:
Следующая часть — вызывающая сторона клиента.
1//Сначала объявите параметры
2 частная константная строка PARAM_GUID = "@GUID";
3 частная константная строка PARAM_VGA_TREEGUID = "@VGATreeGUID";
4 частная константная строка PARAM_MB_TREEGUID = "@MBTreeGUID";
5
6 общедоступная статическая строка GetProductTypeByGUID (строка GUID, строка VGATreeID, строка MbTreeID)
7 {
8 попробовать
9 {
10 int lcID = Thread.CurrentThread.CurrentUICulture.LCID;
11
12 BaseModel bt = новая BaseModel();
13
14 //Создаем хеш-таблицу и последовательно помещаем параметры
15 параметров Hashtable = новая Hashtable();
16 параметров.Добавить(PARAM_PROGUID, GUID);
17 параметров.Добавить(PARAM_VGA_TREEGUID, VGATreeID);
18 параметров.Добавить(PARAM_MB_TREEGUID, MbTreeID);
19
20 //Передаем имя хранимой процедуры и хеш-таблицу с параметрами
21 DataAccess.DataBase.RunProcedureDataSet(lcID, «GetProductTypeByTreeID», параметры, ref bt);
двадцать два
23 return bt.Rows[0]["ProductType"].ToString();
двадцать четыре }
25 уловов (исключение ex)
26 {
27 CommFunction.WriteErrorLogFile("публичная статическая строка GetProductTypeByGUID(смешивание GUID, строка VGATreeID, строка MbTreeID) ошибка: " + ex.Message);
28 возврат «Другое»;
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, если (!CheckRemotingClient())
6 {
7 возврат;
8}
9 Console.WriteLine(DateTime.Now.ToString() + "Query(" + lcid.ToString() + ", string SQLString, Hashtable cmdHashtable, ref BaseModel baseModel)");
10 int я = cmdHashtable.Count;
11 //Следующее создает параметры хранимой процедуры
12 SqlParameter[] cmdParms = новый SqlParameter[i];
13 интервал j = 0;
14 foreach (DictionaryEntry в cmdHashtable)
15 {
16 cmdParms[j] = новый SqlParameter(de.Key.ToString(), de.Value);
17 лет++;
18}
19 Colorful.DBUtility.DbHelperSQL.Query(lcid, SQLString, cmdParms, ref baseModel);
20}
двадцать один // ---------------------------------------------- - ------------------------------------------
22 #endregion
http://www.cnblogs.com/blockhead/archive/2006/08/17/479720.html