web api 是一个 面向资源(ROC) 通过 HTTP协议动词来修改资源状态的可自我寄宿(SelfHost)的接口 今天 seaconch 的主要目的是实现一个简单的 ASP.NET Web API 栗子

什么是Web API

谈谈REST与ASP.NET Web API

怎样理解 REST、RESTful

关于什么是 Web API seaconch 也就不再这里多说了

web api 是一个 面向资源(ROC) 通过 HTTP协议动词来修改资源状态的可自我寄宿(SelfHost)的接口

今天 seaconch 的主要目的是实现一个简单的 ASP.NET Web API 栗子

新建一个 ASP.NET Web API 项目

1.新建项目

1.png

2.选择 Web API

2.png

3.新建 Person 类

3.png

Person类:

    /// <summary>
    /// 人
    /// </summary>
    public class Person
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public int Sex { get; set; }
        public int Age { get; set; }
    }

4.新建 Person_Context 类

Person_Context 类:

using System.Collections.Generic;

namespace chestnut_webapi.Models
{
    public class Person_Context : System.Data.Entity.DbContext
    {
        public Person_Context()
            : base("name=sc_db")
        { }

        public System.Data.Entity.DbSet<Person> Persons { get; set; }

        protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
        {
            modelBuilder.Conventions.Remove<System.Data.Entity.ModelConfiguration.Conventions.PluralizingTableNameConvention>();
        }
    }

    public class Db_Initer : System.Data.Entity.DropCreateDatabaseAlways<Person_Context>
    {
        protected override void Seed(Person_Context context)
        {
            context.Persons.Add(new Person()
            {
                Name = "毛毛",
                Age = 13,
                Sex = 1
            });

            context.Persons.Add(new Person()
            {
                Name = "团团",
                Age = 12,
                Sex = 2
            });

            base.Seed(context);
        }
    }
}

5.配置连接字符串

4.png

6.配置 EF 初始数据

6.png

对 Person 的 Get 请求

1.新建Controller

右键 Controllers 新建一个空的 API

1.png

2.GET:

    public class PersonController : ApiController
    {
        Models.Person_Context person_db = new Models.Person_Context();
        public List<Models.Person> Get()
        {
            return person_db.Persons.ToList();
        }
    }

3.调用API

这里我们用小程序来测试效果
3.png

对 Person 的 POST 请求

1.Post

这里我们在 Post API 中,添加了一个新的 Person -> 布布

        public List<Models.Person> Post()
        {
            Models.Person p = new Models.Person()
            {
                ID = 1,
                Name = "布布",
                Age = 5,
                Sex = 1
            };

            person_db.Persons.Add(p);

            person_db.SaveChanges();

            return person_db.Persons.ToList();
        }

2.小程序代码

相信有心的同学已经发现了,小程序中我们只修改了method 由 GET -> POST

对 Person 的 PUT 请求

1.PUT

        public List<Models.Person> Put()
        {
            Models.Person person = person_db.Persons.Where(p => p.Name == "团团").ToList().Single();

            person.Name = "圆圆";

            person_db.SaveChanges();

            return person_db.Persons.ToList();
        }

2.小程序代码

2.png

结尾

至此,一个简单的对 Person 进行 HTTP GET / POST / PUT 操作的 ASP.NET Web API 已经呈现在了大家面前

过程中我们也可以看到,为什么说 ASP.NET Web API 是 ROC ?你也可以看到对于微信小程序而言,她仅仅是修改了请求 method,那么就实现了对 Person 这个资源的不同操作

然而我们并没有开放对于 Person 资源的 DELETE 请求方式,那么相应的我们就等于并没有对外开放 Person 的删除方式

好了,今天就到这啦,相信大家对于 ASP.NET Web API 也有了一个初步的认识

相关文章:

C++ boost::asio编程-域名解析详细介绍

正则在C++中使用的详细介绍

相关视频:

C# 教程

以上就是详细介绍C# 中 ASP.NET Web API 的 ROC的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

  • 相关标签:ef c# webapi
  • 程序员必备接口测试调试工具:点击使用

    Apipost = Postman + Swagger + Mock + Jmeter

    Api设计、调试、文档、自动化测试工具

    网页生成APP,用做网站的技术去做APP:立即创建

    手机网站开发APP、自助封装APP、200+原生模块、2000+映射JS接口按需打包

    • 上一篇:最新总结C语言中关于指针等相关理解和使用事宜
    • 下一篇:原来斐波拉契数列还有这种写法,你知道吗?

    相关文章

    相关视频


    • c语言中goto语句的含义是什么
    • C/C++深度分析
    • C#中GDI+编程10个基本技巧二
    • 应用绝对路径与相对路径
    • 详细介绍C# 中 ASP.NET Web API ...
    • SQL DEFAULT
    • Eclipse 首选项(Preferences)
    • Firefox 浏览器
    • C# 教程
    • C# 简介

    视频教程分类

    • php视频教程
    • html视频教程
    • css视频教程
    • JS视频教程
    • jQuery视频教程
    • mysql视频教程
    • Linux视频教程
    • Python视频教程
    • Laravel视频教程
    • Vue视频教程

    专题

    详细介绍C# 中 ASP.NET Web API 的 ROC