Bạn đang sử dụng quá tải sai phương pháp ActionLink
. Bạn nên sử dụng:
@Html.ActionLink("Test", "Foo2", "Home", new { uId = 12 }, null)
Tình trạng quá tải này sẽ được sử dụng làm giá trị tuyến đường chứ không phải là thuộc tính HTML. Tình trạng quá tải bạn đang sử dụng làm giải thích new { uId = 12 }
là đối tượng có thuộc tính TML của liên kết hành động. Bằng cách gọi quá tải được chỉ định ở trên, bạn nhập vào null
làm thông số thứ năm, thông số này sẽ được sử dụng cho các thuộc tính HTML và đối tượng của bạn làm giá trị tuyến đường.
Chúng ta có thể dễ dàng nhìn thấy những gì đang xảy ra bằng cách nhìn vào những gì được hiển thị:
@Html.ActionLink("Test", "Foo2", "Home", new { uId = 12 })
// Renders: <a href="/Home/Foo2?Length=4" uId="12">Test</a>
@Html.ActionLink("Test", "Foo2", "Home", new { @class = "test-class" })
// Renders: <a class="test-class" href="/Home/Foo2?Length=4">Test</a>
@Html.ActionLink("Test", "Foo2", "Home", new { uId = 12 }, null)
// Renders: <a href="/Home/Foo2?uId=12">Test</a>
@Html.ActionLink("Test", "Foo2", "Home", new { uId = 12 }, new { @class = "test-class" })
// Renders: <a class="test-class" href="/Home/Foo2?uId=12">Test</a>
Hy vọng điều này xóa nó lên một chút.
Nguồn
2013-05-29 10:45:15
điều này đang hoạt động, cảm ơn bạn – gurehbgui
@gurehbgui Bạn được chào đón. –