2012-01-11 168 views
1

我在MVC像(我用剃刀使用MVC C#):@ Html.ActionLink與鏈接一個id

@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}) 

產生類似的東西時,我看源代碼:

<a href="/iDVI/Project/EditProject/535">Edit</a> 

請注意535是如何獲得item.ProjectID的結果。 這很好。我喜歡做的是爲這個編輯鏈接添加一個id。例如:

<a href="/iDVI/Project/EditProject/535" id="Projectid">Edit</a> 

我該怎麼做。我知道使用新的{id = ...}會創建一個id,但id已經被用於我需要做的事情。

我需要現在給鏈接一個id?

回答

2

你必須在方法的簽名看,當你使用它。 當你寫道:

@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}) 

您使用以下過載:

HtmlHelper.ActionLink(字符串LINKTEXT,串ActionName,對象 routeValues)

所以這就是爲什麼你得到你的item.ProjectID作爲url的一部分。在這種情況下,它是一個路徑值。

你正在尋找的超載可能是這一個:

HtmlHelper.ActionLink(字符串LINKTEXT,串ActionName,對象 routeValues,對象htmlAttributes)

使用這種超負荷您指定要使用變量item.ProjectID作爲url的一部分以及鏈接的屬性:

@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}, new { id = item.ProjectID }) 

如果你真的想拼出變量的名稱,你可以這樣寫:

@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}, new { id = @"Projectid" }) 

這給你所需的輸出。

3

用途:

@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID }, new { id = "Projectid" }) 
0

嘗試

@Html.ActionLink("Edit", "EditProject", null, new { id = item.ProjectID}) 
相關問題