创建Web API并使用_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 创建Web API并使用

创建Web API并使用

 2017/11/2 15:11:33  Insus.NET  程序员俱乐部  我要评论(0)
  • 摘要:昨晚有教一个网友在ASP.NETMVC里,创建WebAPI和在MVC视图中应用此API。可以在ASP.NETMVC中,创建程序的model:namespaceInsus.NET.Models{publicclassWeather{privateint_Month;publicintMonth{get{return_Month;}set{_Month=value;}}privatestring_Season;publicstringSeason{get{return_Season;}set
  • 标签:API 创建 Web 使用

昨晚有教一个网友在ASP.NET MVC里,创建Web API和在MVC视图中应用此API。

 

可以在ASP.NET MVC中,创建程序的model:

 

class="code_img_closed" src="/Upload/Images/2017110215/0015B68B3C38AA5B.gif" alt="" />logs_code_hide('11ceb61c-f249-4cbb-aa7d-66c639bd1fe9',event)" src="/Upload/Images/2017110215/2B1B950FA3DF188F.gif" alt="" />
namespace Insus.NET.Models
{
    public class Weather
    {
        private int _Month;

        public int Month
        {
            get { return _Month; }
            set { _Month = value; }
        }


        private string _Season;

        public string Season
        {
            get
            {
                return _Season;
            }
            set { _Season = value; }
        }       
    }
}
Source Code


model创建好了,可以开始创Web API:


如果你的环境是第一次创建Web API的,它会打开一个文本,是教诉你怎样配置Global.asax.cs的:

 
稍后注意一下,api的路由注册应该放在mvc的路由前面。

 

接下来,为你的api接口写方法或是函数:


namespace Insus.NET.Apis
{
    public class WeatherAPIController : ApiController
    {
        [Route("api/WeatherAPI/ApiMethod")]
        [HttpPost]
        public Weather ApiMethod(Weather w)
        {   
            var a = new List<int>() { 1, 2, 3 };
            if (a.Contains(w.Month))
                w.Season = "春季";

            var b = new int[] { 4, 5, 6 };
            if (b.Contains(w.Month))
                w.Season = "夏季";

            IEnumerable<int> c = new List<int>() { 7, 8, 9 };
            if (c.Contains(w.Month))
                w.Season = "秋季";

            var d = "10,11,12".Split(new char[] { ',' }).Select(i => Int32.Parse(i)).ToArray();
            if (d.Contains(w.Month))
                w.Season = "冬季";

            return w;
        }
    }
}
Source Code


以上内容全是Web API的建设。前端介面,就可以使用它们了。
 
现在ASP.NET MVC网站上,添加一个视图,并添加一些html:



为铵钮补充click事件,那是使用jQuery的ajax来POST用户输入的月份,然后系统返回季度:

 

 $(function () {
            $("#btnConvert").click(function () {
                var obj = {};
                obj.Month = $("#txtMonth").val();
               
                $.ajax({
                    type: "POST",
                    url: "/api/WeatherAPI/ApiMethod",
                    data: JSON.stringify(obj),
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (response) {
                        $('.label').html("你输入的月份:" + response.Month + ";  转换季度是:" + response.Season + "。");
                    },
                    failure: function (response) {
                        alert(response.responseText);
                    },
                    error: function (response) {
                        alert(response.responseText);
                    }
                });
            });
        });
Source Code


演示:


 

发表评论
用户名: 匿名