ASPでNET(WebFormモード)がWebAPIを開発するいくつかの一般的な方法

2913 ワード

ASPでNETは多くのAPIを书いて、一部の人はMVCあるいはWCF(WebService)がもっとWebAPIを书くのに适していると思っているかもしれませんが、WebFormは简単で、配置しやすくて、やはりとても良いWebAPIの开発の选択で、以下は个人が开発の中でよく使ういくつかの方法で、出して分かち合って、达人は多く指导してください!
1.いくつかの文字列を返します(最も基本的なものは、必ず使えます)
/// <summary>
        ///      
        /// </summary>
        /// <param name="Content">  </param>
        void ResponseString(string Content)
        {
            Response.ContentType = "text/json";
            Response.Write(Content);
            Response.End();
        }

まず、応答コンテンツのタイプをtext/json、またはアプリケーション/json、text/xmlなどと指定し、応答を行い、その後、応答を強制的に停止し、いくつかのコンテンツエラーを防止します.
2.オブジェクトをJSON文字列に変換する(JSONが流行っているのでXMLはあまり言わない)
/// <summary>
        ///       JSON   
        /// </summary>
        /// <param name="obj">       </param>
        /// <returns></returns>
        string TransToJSON(object obj)
        {
            JavaScriptSerializer json = new JavaScriptSerializer();
            return json.Serialize(obj);
        }

この方法の実装には参照を追加する必要があることに注意してください.
using System.Web.Script.Serialization;

オブジェクトをJSON文字列に変換することができ、基本的には自分で書いたクラスのオブジェクトであり、配列もサポートできる.
3.いくつかのエラーマーク(エラーが発生するのは避けられないので、いくつかの処理を行う)
/// <summary>
        ///     
        /// </summary>
        /// <param name="flag">  ,0:  ,1:    ,2:    ,3:     ,4:    ,5:     ,6:    ,7:   ,8:    ,9:    </param>
        void ReError(int flag)
        {
            switch (flag)
            {
                case 1:
                    ResponseString("null");
                    break;
                case 2:
                    ResponseString("Format_Error");
                    break;
                case 3:
                    ResponseString("DB_Error");
                    break;
                case 4:
                    ResponseString("Param_Error");
                    break;
                case 5:
                    ResponseString("Server_Error");
                    break;
                case 6:
                    ResponseString("System_Error");
                    break;
                case 7:
                    ResponseString("Illegal");
                    break;
                case 8:
                    ResponseString("Process_Error");
                    break;
                case 9:
                    ResponseString("Out_Of_Range");
                    break;
                case 0:
                    ResponseString("Unknown_Error");
                    break;
                default:
                    break;
            }
            Response.End();
        }

内容はすべて変えることができて、このように少し便利です.
はい、これだけで、とても簡単で、とても実用的です!