《ASP.NET5》Web API Controller Class学习

本文探讨了在VS2015中使用WebAPIControllerClass而非MVCControllerClass的原因,重点介绍了前者如何更适合无视图的RESTful API开发,并提供了一个简单的WebAPIController示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Web API Controller Class是VS2015中ASP.NET Web Application类型的项目中添加新项时的一种模板类型,该模板类型产生一个REST风格的接口类,

为什么选择它不选择MVC Controller Class呢?

因为我们不希望它涉及到View,根本不需要View;

对于高手来说其实都一样了,继承的类都是一样的,只是具体的实现是不一样的;

比如别人已经提供了完整的类似代码,选择哪种模板就不重要了。

示例代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Mvc;

// For more information on enabling Web API for empty projects, visit http://go.microsoft.com/fwlink/?LinkID=397860

namespace dotnethelloworld.Controllers
{
    [Route("api/[controller]")]
    public class ValuesController : Controller
    {
        // GET: api/values
        [HttpGet]
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET api/values/5
        [HttpGet("{id}")]
        public string Get(int id)
        {
            return "value";
        }

        // POST api/values
        [HttpPost]
        public void Post([FromBody]string value)
        {
        }

        // PUT api/values/5
        [HttpPut("{id}")]
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/values/5
        [HttpDelete("{id}")]
        public void Delete(int id)
        {
        }
    }
}

添加方法:

在项目名称上点击鼠标右键,添加》新建项


左侧选择服务器端,中间选择:Web API Controller Class,名称处输入您希望使用的名称


浏览调用:

VS2015窗口活动状态下,按F5键进入调试状态,会打开一个默认浏览器窗口,地址类似:http://localhost:3753

注意:后面的端口是随机的;

REST风格的API我们通过浏览器地址栏访问能测试的只有GET类型的接口请求,

我们来看一下Get()方法的注释:// GET: api/values

这告诉我们可以通过api/values访问这个方法,访问地址例如:http://localhost:3753/api/values

我们再来看一下Get(int id)方法的注释:// GET: api/values/5

这告诉我们可以通过api/values/5访问这个方法,访问地址例如:http://localhost:3753/api/values/5

后面的5就是传递给对应int id的值,类型需要匹配,不匹配的话默认是0;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值