0
第一MVC4項目,我已經打了緩衝區...MVC4 ActionLink的不傳遞參數
我希望能夠這樣引用我的網站頁面;
菜單/子菜單/ DOCUMENT/ID
其中ID值是可選的,並且任何其他標記上結束時,模型將處理文檔部分,這將是作爲文本,例如,
HOME /歡迎/歡迎到我們的店
所以我有一個路線設置(這裏只有1路)
routes.MapRoute(
name: "Default",
url: "{menu}/{submenu}/{document}/{id}",
defaults: new {
controller = "Page",
action= "Data",
menu = "",
submenu = "",
document = "",
id = ""}
我有一個控制器;
public class PageController : Controller
{
// Default view option for documents
public ActionResult Data(string menu, string submenu, string document, string parameters)
{
// Set the View to use rather than it default;
string thisView = "Data";
return View(thisView);
}
}
我們有引用_MenuPartial.cshtml文件
@model MyNameSpace.Models.PageModel
<ul>
@foreach (var item in Model.Menus.MainMenu)
{
<li>@Html.ActionLink(item.Label, "Page", "Data", new
{
menu = "MENU",
submenu = "SUBMENU"
},
null
)
</li>
}
</ul>
上述所有正確的文本等動態地寫出我的主菜單_Layout.cshtml文件等
但是,當我點擊一個標籤時,這條路線似乎愉快地映射到PageControllers數據函數,但是字符串菜單,字符串子菜單,字符串文檔,字符串參數的值是「」或爲空。
如果我修改了網址,那麼他們會正確傳入。
我敢肯定,這只是對我應該做的事情的一種誤解,我希望一旦某種靈魂發現了它,我就會失去活力!
感謝 安迪