2010-07-26 73 views
0

我跟隨的NerdDinner ASP.Net MVC教程的使用情況和我有下面的代碼行:需要一些幫助理解這個Html.ActionLink()

<%= Html.ActionLink("Edit Dinner", "Edit", new { id = Model.DinnerID}) %> | 
<%= Html.ActionLink("Delete Dinner", "Delete", new { id = Model.DinnerID }) %>   

我不明白的是爲什麼ActionLink的第三個參數需要一個新的命令。有人可以詳細說明嗎?

爲什麼需要創建一個新的{},而不是僅僅傳遞ActionLink ModelDinnerID而不將其實例化爲另一個變量?

回答

0

我相信它的存在主要是爲了使我們能夠在多個路由傳遞值:

/博客/ [用戶名] /存檔/ [年]/[月]/[日]/[標題]

<%= Html.ActionLink("Blog", "Details", new { username = Model.Username, year = Model.year, month = Model.month, day = Model.day, title = Model.title }) %> 

雖然,我承認,當你定義的所有東西都是一個微不足道的ID值時,必須實例化一個新對象是很繁瑣的。不幸的是,你所寫的代碼在這一點上是最簡潔的。