可選的 URI 引數和預設值

你可以通過向路由引數新增問號來使 URI 引數可選。你還可以使用 form parameter = value 指定預設值。

public class BooksController : Controller
{
    // eg: /books
    // eg: /books/1430210079
    [Route(“books/{isbn?}”)]
    public ActionResult View(string isbn)
    {
        if (!String.IsNullOrEmpty(isbn))
        {
            return View(`OneBook`, GetBook(isbn));
        }
        return View(`AllBooks`, GetBooks());
    }

// eg: /books/lang
// eg: /books/lang/en
// eg: /books/lang/he
[Route(“books/lang/{lang=en}”)]
public ActionResult ViewByLanguage(string lang)
{
    return View(`OneBook`, GetBooksByLanguage(lang));
}

在此示例中,/ books 和/ books / 1430210079 都將路由到檢視操作,前者將列出所有書籍,後者將列出特定書籍。 / books / lang 和/ books / lang / en 都將被視為相同。