サーチ…


前書き

ここでは、ASP.Net C#でWebサービスを文法的に呼び出して使用する方法について説明します。目的のためには、多くの機能を提供するddlをダウンロードする必要があります。 ImportJsonをhttps://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFUからダウンロードします。

この記事は、ASP.NET C#Webサービス/ Web APIサービスを使用してプロジェクトを開発しようとする人にとっては非常に便利です。この記事は、Xamarinを使用してプロジェクトを開発している人にも役立ちます:モバイルアプリケーション開発

備考

あなたはImportJson dllとrestsharp ddlの参照を与える必要がありました。 ImportJsonはここからダウンロードできますhttps://drive.google.com/open?id=0B-2bGoHKJvnOckdPUHVjdFZTcFUそしてrestsharp.dllはインターネットから取得します

任意の提案/連絡先、 akhandagale65@gmail.comにご注意ください

単純な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メソッドを使用したWebサービスの呼び出し

        /// <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メソッドを使用してWebサービスを呼び出す(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;
    }

出力付きのWebサービス呼び出し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

    }

リスト形式またはデータテーブル形式のWebサービス出力

    /// <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または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);;
                     }


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow