2012-02-20 20 views

Trả lời

45

RouteUrl tạo url dựa trên tên tuyến đường. Nếu bạn có nhiều tuyến với các tham số tương tự, phương thức Action có thể chọn sai, nó hoạt động dựa trên thứ tự định nghĩa tuyến đường. Điều này có thể xảy ra khi tuyến đường của bạn có thông số tùy chọn.

Nếu bạn muốn đảm bảo rằng một url tuyến đường nhất định sẽ được sử dụng, bạn cần phải gọi RouteUrl chuyển tên tuyến đường này. Tên tuyến đường là duy nhất và xác định rõ ràng tuyến đường.

Một sự khác biệt nữa là Action là cụ MVC (nó sử dụng bộ điều khiển và tên hành động), trong khi RouteUrl là chung chung là và có thể được sử dụng mà không MVC (bạn có thể có định tuyến trong WebForms).

16

Url.RouteUrl cho phép bạn chỉ định một tuyến đường cụ thể theo tên. Điều này sẽ buộc việc sử dụng tuyến đường đó. Url.Action sẽ chỉ chọn tuyến đường đầu tiên phù hợp với tiêu chí.

+0

Điều này cũng có nghĩa là Url.RouteUrl tốt hơn về hiệu suất trên Url.Action – Ranganatha

Các vấn đề liên quan