2012-12-23 22 views

Trả lời

1

Có hai cách cơ bản để làm điều đó:

  • tạo <form> rằng có action bộ đến một URL trỏ đến các hành động mà bạn muốn gọi.

  • làm một yêu cầu POST ajax từ khách hàng

Cập nhật

Để chuyển hướng, bạn chỉ có thể trả về một RedirectToRouteResult. Thường được thực hiện bằng cách sử dụng một trong các RedirectToAction overloads available on Controller.

Cập nhật 2

Nếu hành động mục tiêu là POST chỉ (hãy giả sử nó được gọi là TargetAction), bạn có thể tạo một hành động mới cho phép GET và làm return TargetAction().

Một chuyển hướng tinh khiết là không thể, bởi vì AFAIK chuyển hướng có nghĩa là:

  • server trả về một tình trạng 3xx chuyển hướng cùng với vị trí mới của tài nguyên
  • trình duyệt hiện một yêu cầu GET đến vị trí được chỉ ra ở bước trước.

Tuy nhiên, tôi khuyên bạn nên suy nghĩ lại về thiết kế của các hành động điều khiển để tránh tình huống này nếu có thể.

+0

tôi muốn chuyển hướng từ hành động đến một hành động đăng bài khác mà không sử dụng chế độ xem hoặc biểu mẫu –

+0

tôi biết phương thức RedirectToAction, nhưng tôi muốn chuyển hướng đến hành động httppost và không nhận hành động, khi tồn tại và đăng hành động với cùng tên trong bộ điều khiển, cách có thể chỉ định chuyển hướng đó để đăng hành động –

+0

@MohammadAkbari có, không phải tôi đã hiểu vấn đề thực sự là gì. Vui lòng xem cập nhật cho câu trả lời của tôi. – GolfWolf

0

Tại sao? Bạn không thể chuyển hướng đến một hành động bài đăng bằng định nghĩa động từ http.

Tại sao không chỉ gọi phương thức hành động khác của bạn trực tiếp thay vì sử dụng chuyển hướng?

+0

tôi sử dụng một mô-đun muốn gọi hành động controllel –

+0

I không hiểu những gì bạn nói? Dính vào quy ước MVC tiêu chuẩn. Điều gì tại bạn đang cố gắng thực hiện điều đó khiến bạn nghĩ rằng bạn muốn chuyển hướng đến một phương thức đăng bài?Nếu bạn muốn chuyển hướng từ một cuộc gọi phương thức thấp hơn so với bộ điều khiển gốc thì hãy suy nghĩ lại về chiến lược đó và chỉ thực hiện chuyển hướng từ các phương thức bộ điều khiển của bạn. –

+0

Tôi sử dụng một mô-đun AcountController đã thực hiện xác thực, một phần của bộ điều khiển khác nếu một số điều kiện là đúng, tôi đăng ký một người dùng và gán cho người dùng và vượt qua, tôi muốn người dùng mới này đăng nhập nhưng sử dụng cùng một Đăng nhập trong AccountController, cho người dùng hành động đăng nhập và vượt qua nhưng không thể truy cập để đăng nhập (bài) hành động –

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