2009-07-16 28 views
5

Tôi đang gặp sự cố khi thực hiện điều gì đó có lẽ khá đơn giản!Phương thức hành động mơ hồ - ASP.net MVC

Tôi có một danh sách cổ phiếu được thực hiện bởi 1) một biểu mẫu đơn giản với tham số (\ Index) và 2) ajax được gọi là xem một phần hiển thị danh sách cổ phiếu (dựa trên các thông số).

Trên cùng một biểu mẫu đơn giản này (\ Index) Tôi có một liên kết hành động đến phương thức "Thêm cổ phiếu" gọi một biểu mẫu khác để thêm cổ phiếu.
Khi người dùng đã hoàn tất việc thêm cổ phiếu, tôi chuyển hướng họ trở lại trang danh sách chứng khoán (\ Index).

Vấn đề của tôi là tôi muốn "nhớ" các tham số ban đầu được nhập vào biểu mẫu này để người dùng không chỉ được chuyển hướng trở lại trang có tham số trống buộc họ nhập lại.

Tôi nghĩ tôi có thể chỉ đơn giản là quá tải phương pháp Index như vậy:

Function Index() As ActionResult 

    Return View(New Stock_ViewModel) 

End Function 

Function Index(ByVal svm As Stock_ViewModel) As ActionResult 

    Return View(svm) 

End Function 

tôi nhận được lỗi này: The current request for action 'Index' on controller type 'StockController' is ambiguous between the following action methods:...

Bây giờ tôi đã đọc this post và câu trả lời của nó nhưng tôi không thể tìm ra cách để thực hiện dung dịch.

Giải pháp này có thể áp dụng trong trường hợp của tôi không? Có cách nào tốt hơn để đạt được những gì tôi đang cố gắng làm không?

Cảm ơn bạn đã giúp đỡ!

Trả lời

0

Nó xuất hiện câu hỏi của ông là phức tạp hơn của bạn. Thay vì lớp RequiredRouteValues ​​mà ông đã tạo, bạn sẽ có thể sử dụng thuộc tính RequiredRequestValue mà ông đã sử dụng mà Levi tạo ra.

Bạn sẽ phải tự chuyển đổi sang vb.net, nhưng hãy gắn bó với câu trả lời của Levi chứ không phải sửa đổi tuyến đường.

James

+0

Bạn sẽ cần phải tự mình tạo ra attribtue, giống như khi bạn đang sử dụng RequireRouteValues. Nguồn được đưa vào câu trả lời của Levi (trong C#). –

+0

Cảm ơn bạn đã dành thời gian cho James, tôi đã triển khai RequestRequestValue đơn giản hơn theo bài đăng của Levi. – wheelibin

3

Bạn sẽ cần phải trang trí các phương pháp của bạn như thế này:

Function Index() As ActionResult 
    Return View(New Stock_ViewModel) 
End Function 

<RequireRouteValues("svm")> _ 
Function Index(ByVal svm As Stock_ViewModel) As ActionResult 
    Return View(svm) 
End Function 
+0

Yeh, đó là những gì nó nói trong bài khác ..... nếu tôi làm điều đó nó không biết gì là - "Loại RequireRouteValues ​​không được định nghĩa" .... gì tôi đang mất tích sao !? – wheelibin

+0

Đó là thuộc tính tùy chỉnh (mã nằm trong câu hỏi mà bạn đã liên kết) – NikolaiDante

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