1. 程式人生 > >.Net Core 2.0 學習路由和請求參數傳遞

.Net Core 2.0 學習路由和請求參數傳遞

com var 技術分享 net oca style 靈活 比較 cor

一、配置默認路由方式

技術分享

{Controller=Home}/{action=Index}/{id?}

默認請求地址:http://localhost:xxx/home/index

/id? 是可選項例如

HomeController中

        public ActionResult Index()
        {
            return Content("ok");
        }
        public ActionResult Index(int id)
        {
            return Content("ok");
        }    

第一個方法是默認路由所指向方法。

第二個方法,原先請求地址應該為:http://localhost:xxx/home/index?id=1,因為/id?的緣故可以改為:http://localhost:xxx/home/index/1

二、請求參數傳遞

1. 用對象的方式接收請求參數例如:

我們有一個類用來接收參數

  技術分享

對應的方法如下,加上[FromBody]的目的是告訴它獲取參數在body裏

public class Paramses
{
    public string Id { get; set; }

    public string Name { get; set; }

    public
int Age { get; set; } }

請求的時候參數可以跟在地址末尾,也可以是ajax的JSON參數例如:

http://localhost:xxx/home/text?id=asdqwe&name=haos&age=1

$.ajax({
  url:"",
  type:"post",
  data:{
    id:"qwe",
    name:"asd",
    age:1
  }
})

2. 用object類的參數參數接收

技術分享

這時的參數就比較靈活,可以任意的字符串;

比如:

$.ajax({
  url:"",
  type:"post",
  data:{
    id:
"qwe",     name:"asd",     age:1   } })

此時接收到的內容

技術分享

再用如下方法轉換成字典,獲取對應內容

Dictionary<string, string> p = JsonConvert.DeserializeObject<Dictionary<string, string>>(paramses.ToString());
var i = p["id"];
var age = int.Parse(p["age"]);

.Net Core 2.0 學習路由和請求參數傳遞