Với ASP.net MVC có thể POST một biểu mẫu đến một hành động điều khiển bao gồm các tham số không có trong biểu mẫu, nhưng từ URL?ASP.NET MVC - Phương thức hành động POST với tham số bổ sung từ URL
Ví dụ
Phương pháp hành động trong GroupController:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(int idOne, int idTwo, Model model)
{ ... }
Tuyến:
"{controller}/{action}/{idOne}/{idTwo}"
URL đăng:
/Employee/Show/1/42
Trong ví dụ này, hình thức là được đăng lên một bộ điều khiển khác, mô hình có giá trị chính xác, tuy nhiên các thông số khác có giá trị mặc định 0.
Hành vi tôi mong đợi là ModelBinder sẽ thấy rằng tôi có hai tham số khớp với tuyến đã cho và gán dòng điện các giá trị của 1 và 42 cho các tham số theo cách tương tự như một hoạt động GET hoạt động.
Hành vi này không được hỗ trợ hay tôi thiếu gì đó?
EDIT: Để được rõ ràng, hình thức trên quan điểm Show
cho bộ điều khiển Employee
chứa một hình thức được gửi bài đến một bộ điều khiển khác nhau. Chúng tôi có thể gọi nó là Group
.
URL hành động hình thức trông như thế này
/Groups/Create/0/0
Hình thức được khai báo như sau
Html.BeginForm("Create", "Groups")
Sau khi thử nhiều quá tải khác nhau cho Html.BeginForm
Tôi đã tìm thấy rằng các tham số chỉ được ánh xạ khi biểu mẫu URL hành động khớp với URL hiện tại trong thanh địa chỉ trình duyệt.
Vì vậy, nếu tôi điều hướng đến URL /Groups/Create/1/42
Tôi sẽ có biểu mẫu mới. Nếu sau đó tôi gửi biểu mẫu, giá trị tuyến đường URL được chuyển đến hành động POST.
tôi sẽ cố gắng xác định các tuyến đường để bao gồm các mô hình và thiết lập nó như một mặc định null và xem những gì sẽ xảy ra. '{controller}/{action}/{idOne}/{idTwo}/{Model}' –