Web Api 大致寫法 跟用途

1.用vs2013建一個 webapi
2.在 Models 加一個 類別
_My_Data.cs
   public class _My_Data
    {
      public int  Id;
      public string Name;
      public double Price { get; set; }
     }
3建一個 Control(控制器) 我選 WebAPi2-空白
 public class My_BaController : ApiController
    {
        public List<_My_Data> GetAll()
        {
            List<_My_Data> alist = new List<_My_Data>();
            _My_Data aa=new _My_Data();
            aa.Id = 1; aa.Name = "a1"; 
            aa.Price = 1.99;
            alist.Add(aa);
             
            aa.Id = 2; aa.Name = "a2";
            aa.Price = 2.99;
            alist.Add(aa);

            return alist;

        }
    }
 紅色是自己加的
意思是 抓一組資料然後回丟
--------------------------------------
call 的方法
用瀏覽器(當然 專案要跑起來)
http://localhost:32478/api/My_Ba/GetAll
就可得到  GetAll.json 的回傳資料
當然也可用網頁java去抓
<script type="text/javascript">
    $(function(){
        // 傳送 AJAX 請求
        $.getJSON("/api/My_Ba/GetAll",
        function (data) {
            // 成功, data 會包含所有產品列表
            $.each(data, function (key, val) {
                // 格式化文字資料,以方便顯示
                var str = val.Name + ': $' + val.Price;

                // 將產品資料建置成 li項目,然後加入 ul 元素中
                $('<li/>', { html: str }).appendTo($('#products'));   
            });
        });
    });
</script>
------------------------------------------
用 C# winform call 的方法
 Web API 使用到 JSON 格式,
所以透過 NuGet 
安裝 Json.Net 幫助我們處理 JSON 格式
安裝  webapi 2.2 才可用 System.Net.Http HttpClient
參考
http://www.dotblogs.com.tw/joysdw12/archive/2013/06/03/web-api-httpclient-windows-form.aspx


---------------------------
如果在自己原本 MVC 內加入 Web API
VS2013 會叫你在
專案中的 Global.asax.cs 檔案需要其他變更,才能啟用 ASP.NET Web API。

1. 新增下列命名空間參考:

    using System.Web.Http;
    using System.Web.Routing;

2. 如果程式碼尚未定義 Application_Start 方法,請新增下列方法:

    protected void Application_Start()
    {
    }

3. 將以下幾行新增至 Application_Start 方法的開頭處:

    GlobalConfiguration.Configure(WebApiConfig.Register);
可是Call api 不成功  另行研究 先另外寫獨立 api
---------------------------------------------------------------------







留言

熱門文章