2012-01-16 18 views
32

Usiłuję zrozumieć, jak używać:Jak korzystać z Html.Action?

@Html.Action("GetOptions",) 

Co chciałbym zrobić, to przekazać wezwanie do mojego kontrolera i przekazać parametry:

pk = "00" and rk = "00" 

Może ktoś wyjaśnić, jak mogę zrób to z Html.Action

+0

czym jest GetOptions? – Alex

Odpowiedz

37

Powinieneś przyjrzeć się dokumentacji dla metody Action; to jest dobrze wytłumaczone. W Twoim przypadku, to powinno działać:

@Html.Action("GetOptions", new { pk="00", rk="00" }); 

Parametr controllerName domyślnie kontrolera z którego Html.Action powołano się. Więc jeśli próbujesz wywołać działania z innego kontrolera, musisz podać nazwę kontrolera tak:

@Html.Action("GetOptions", "ControllerName", new { pk="00", rk="00" }); 
+0

Proszę dać mi znać, czym jest GetOptions? czy to jest metoda działania? – Alex

+1

Tak, jest to nazwa metody działania. Dokumentacja, którą połączyłem, wyjaśnia szczegółowo. –

7

najpierw utworzyć klasę trzymać swoje parametry:

public class PkRk { 
    public int pk { get; set; } 
    public int rk { get; set; } 
} 

następnie za pomocą Html.Action uboczny parametry:

Html.Action("PkRkAction", new { pkrk = new PkRk { pk=400, rk=500} }) 

i użyć do kontrolera:

public ActionResult PkRkAction(PkRk pkrk) { 
    return PartialView(pkrk); 
} 
+2

Możesz użyć anonimowej klasy. – gdoron

+0

czym jest GetOptions? czy to jest metoda działania? – Alex

+0

tak, GetOptions jest metodą zdefiniowaną w kontrolerze. –