web-services
Вызов веб-сервисов программно с использованием разработки приложений C # .net и Xamarin
Поиск…
Вступление
Здесь мы увидим про грамматический вызов и использование веб-служб в ASP.Net C #. Для этой цели вам потребуется скачать следующий ddl, который предоставляет вам множество функций. Загрузите ImportJson с https://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFU
Эта статья очень полезна для тех из вас, кто собирается разработать проект с использованием веб-служб ASP.NET C # / Web API Services. Эта статья также полезна для тех, кто разрабатывает проект с использованием Xamarin: Mobile App Development
замечания
Вы должны указать ссылку на dllddddjson и restsharp ddl. ImportJson можно скачать здесь https://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFU И restsharp.dll выйдет из Интернета
Любое предложение / контакт, пожалуйста, обратите внимание на [email protected]
Вызов простого метода GET
/// <summary>
/// Simple Get method
/// </summary>
/// <returns> Json formated data </returns>
public string GetJsonData1()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
string jsonResult = _Obj.GetJsonResult(url);
return jsonResult;
}
Вызов веб-службы с использованием метода POST / POST данных
/// <summary>
/// Post Method with input parameter
/// </summary>
/// <returns> Json formated data </returns>
public string GetJsonData2()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
Dictionary<string, object> objDec = new Dictionary<string, object>();
objDec.Add("@FirstParameter", "Value1");
objDec.Add("@SecondParameter", "Value2");
objDec.Add("@ThirdParameter", "Value3");
string jsonResult = _Obj.GetJsonResult(url, objDec);
return jsonResult;
}
Вызов веб-службы с использованием метода POST / POST данных (данные в формате JSON)
/// <summary>
/// Post Method with Input/ data to post in JSON format
/// </summary>
/// <returns> Json formated data </returns>
public string GetJsonData3()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
string inputjson = "{\"@FirstParameter\": \"Value1\",\"@SecondParameter\": \"Value2\",\"@ThirdParameter\": \"Value3\"}";
string jsonResult = _Obj.GetJsonResult(url, null,inputjson );
return jsonResult;
}
Вызов веб-службы с выходом Как объект IEnumerator
/// <summary>
/// Post Method with Input/ data to post in JSON format Or you can send dictionary as shown in previous methods
/// </summary>
/// <returns> Json formated data </returns>
public void GetJsonData4()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
string inputjson = "{\"@FirstParameter\": \"Value1\",\"@SecondParameter\": \"Value2\",\"@ThirdParameter\": \"Value3\"}";
string jsonResult = _Obj.GetJsonResult(url, null, inputjson);
IEnumerator objIEnumerator = _Obj.GetJsonEnumerableResult(jsonResult);
// you can perform further operations on it
}
Вывод веб-службы в формате списка или формате DataTable
/// <summary>
/// Post Method with Input/ data to post in JSON format Or you can send dictionary as shown in previous methods
/// </summary>
/// <returns> Json formated data </returns>
public DataTable GetJsonData6()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
string inputjson = "{\"@FirstParameter\": \"Value1\",\"@SecondParameter\": \"Value2\",\"@ThirdParameter\": \"Value3\"}";
IEnumerator objIEnumerator = _Obj.GetJsonEnumerableResult(url, null, inputjson);
// you can perform further operations on it
// If you want to convert it in Datatable / List
List<ClsMyPropertyClass> lst = new List<ClsMyPropertyClass>();
while (objIEnumerator.MoveNext())
{
lst.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<ClsLineEDoDetails>(objIEnumerator.Current.ToString()));
}
// Upto this you will get List , and you can perform operations on it
// Now if youu want result in datatable, here i written function for List to datatable conversion
return CommonServiceCall.ToDataTable(lst);
}
Насильно сделать метод GET OR POST
/* By Default if you send only url then automatically it will recognize as GET Method and if service having parameters with, Then automatically will convert to POST Method. But I observed some of the services having only URL but are POST Type. For the purpose you can forcefully make the method as you want. As bellow: */
/// <summary>
/// If you want make the service call GET OR POST forcefully then
/// </summary>
/// <returns> Json formated data </returns>
public void GetJsonData5()
{
IOperations _Obj = ClsOperations.GetOperations();
string url = "http://1.2.3.4:1234/Services/rest/CallService/WebRequest/";
string inputjson = "{\"@FirstParameter\": \"Value1\",\"@SecondParameter\": \"Value2\",\"@ThirdParameter\": \"Value3\"}";
string _result = _ Obj.GetJsonResult(url, null, inputjson, ServiceType.POST);;
}