C#ASPの理解方法NET Web APIのREST


Web APIとは


RESTとASPについて話します.NET Web API
REST、RESTfulをどう理解するか
Web API seaconchとは何かについてはここではあまり話さない.
web apiは,HTTPプロトコル動詞によりリソース状態を修正するリソース(ROA)向けのセルフホステル(SelfHost)インタフェースである.
今日のseaconchの主な目的は簡単なASPを実現することです.NET Web API栗

ASPを新規作成NET Web APIプロジェクト


1.新規プロジェクト


2.Web APIの選択


3.Personクラスの新規作成


Personクラス:
    /// 
    ///  
    /// 
    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 Persons { get; set; }

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

    public class Db_Initer : System.Data.Entity.DropCreateDatabaseAlways
    {
        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.接続文字列の構成


6.EF初期データの構成


PersonへのGetリクエスト


1.新規コントローラ


右クリックControllers空のAPIを新規作成

2.GET:

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

3.APIを呼び出す


ここでは小さなプログラムで効果をテストします

PersonへのPOSTリクエスト


1.Post


ここではPost APIに新しいPerson->布布を追加しました
        public List 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 Put()
        {
            Models.Person person = person_db.Persons.Where(p => p.Name == "  ").ToList().Single();

            person.Name = "  ";

            person_db.SaveChanges();

            return person_db.Persons.ToList();
        }

2.ウィジェットコード


の最後の部分


ここで、Personに対してHTTP GET/POST/PUT操作を簡単に行うASP.NET Web APIはすでに皆さんの前に現れています
過程の中で私たちも見ることができて、どうしてASPと言いますか.NET Web APIはROA?微信ウィジェットにとって、彼女は要求methodを修正しただけで、Personというリソースに対する異なる操作を実現していることもわかります.
しかし、Personリソースに対するDELETEリクエスト方式はオープンしていません.それに対応して、Personの削除方式はオープンしていません.
さて、今日はこれで、皆さんはASPについてNET Web APIも初歩的な認識を持っている.
おやすみなさい