web-services
Appel des services Web par programmation à l'aide du développement d'applications C # .net et Xamarin
Recherche…
Introduction
Nous verrons ici l'appel et l'utilisation pro-grammatical des services Web dans ASP.Net C #. Pour le but que vous aurez besoin de télécharger après ddl qui vous fournit de nombreuses fonctions. Téléchargez ImportJson depuis https://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFU
Cet article est très utile pour ceux d'entre vous qui vont développer un projet à l'aide des services Web / Web API Services ASP.NET C #. Cet article est également utile pour ceux qui développent un projet utilisant Xamarin: Développement d'applications mobiles
Remarques
Vous devez donner une référence à ImportJson dll et restsharp ddl. ImportJson peut être téléchargé à partir d'ici https://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFU Et restsharp.dll sera disponible à partir d'Internet
Toute suggestion / contact, s'il vous plaît noter [email protected]
Appel de la méthode GET simple
/// <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;
}
Appel du service Web avec la méthode POST / POST de données
/// <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;
}
Appel du service Web avec la méthode Data POST / POST (publication de données au format 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;
}
Appel de service Web avec sortie en tant qu'objet 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
}
Sortie du service Web au format liste ou au format 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);
}
Forcer avec force la méthode 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);;
}