Đây là một ví dụ về "tình trạng quá tải địa ngục" trong ASP.NET MVC.
Mã đầu tiên gọi phương thức sau đây:
public static MvcHtmlString ActionLink(
this HtmlHelper htmlHelper,
string linkText,
string actionName,
string controllerName,
Object routeValues,
Object htmlAttributes
)
trong khi mã thứ hai gọi điều này là một:
public static MvcHtmlString ActionLink(
this HtmlHelper htmlHelper,
string linkText,
string actionName,
Object routeValues,
Object htmlAttributes
)
Chú ý rằng các tham số chuỗi controllerName
trong cuộc gọi đầu tiên đang trở thành routeValues
trong lần thứ hai một. Giá trị chuỗi "Sản phẩm" đang được chuyển đến các giá trị được định tuyến: thuộc tính chuỗi Length
được sử dụng, có chiều dài là 7 ở đây, do đó "Độ dài = 7" bạn đang nhận được trong tuyến đường.
Xem xét phương pháp đầu tiên, có vẻ như bạn đã hoán đổi các thông số routeValues
và htmlAttributes
.
Nguồn
2010-05-24 14:08:12