2017-02-02 32 views
0

我想創建鏈接使用從控制器傳遞來查看使用ViewBag的@ Html.ActionLink。 這是我在控制器代碼從控制器創建的我的ActionLink不工作

public ActionResult Index() 
{ 
    ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application."; 

    **ViewBag.Link = "@Html.ActionLink(\"Click\", \"About\", \"Home\");";** 

    return View(); 
} 

在我看來,我使用這樣的

<h1>@ViewBag.Title.</h1> 
<h2>@ViewBag.Message</h2> 
**@ViewBag.Link** 

,但我的輸出是不來的鏈接,而不是它@Html.ActionLink("Click", "About", "Home");)來作爲字符串(即,如下面的圖片

enter image description here

而且我甚至嘗試使用@Html.Raw(@ViewBag.Link)但它仍然來了小號如上圖所示。

任何人都可以幫助我這個。

+1

你正在做錯了地方。該語法是在視圖而不是控制器中完成的。 – Nkosi

回答

1

它顯示爲一個字符串,因爲它是一個字符串,瀏覽器無法對該服務器端代碼執行任何操作。

在視圖中調用助手作爲代碼,不要將它作爲字符串傳遞給視圖。事情是這樣的:

<h1>@ViewBag.Title.</h1> 
<h2>@ViewBag.Message</h2> 
@Html.ActionLink("Click", "About", "Home") 

把它當作一個字符串只告訴發出該字符串輸出,它是盡職盡責地做在你的代碼視圖。