簡體   English   中英

如何在MVC動作C#中獲得可選參數

[英]How to get optional parameters in mvc action C#

在HomeController中有一個TestAction,如下所示:

    public ActionResult TestAction(string a = "a", int b = 2, int c = 1)
    {
        var DATA = Request.Params;//Can't get param neither a nor b
        return View();
    }

如果我的訪問鏈接是“ / Home / TestAction?c = 23”。 然后,DATA將為{c = 23},但不包含a和b。 是否有任何方法可以通過訪問鏈接“ / Home / TestAction?c = 23”來獲取這兩個參數以制作像{a =“ a”,b = 2,c = 23}這樣的數據。 (這些參數在不同的頁面中是不同的,因此不能硬編碼)。

您可以通過按如下所示在url中傳遞參數來實現。 模型綁定程序將讀取查詢字符串,並將這些參數值傳遞給action方法。

/Home/TestAction?a=valuea&b=valueb

您也可以使用路線數據來傳遞值。 為此,需要定義一條適當的路線。

將所有參數作為可為null的int ?,字符串默認情況下接受null。 因此,更改后,您的方法將如下所示

public ActionResult TestAction(string a, int? b, int? c)
{
   //Check conditions for null here
    return View();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM