Próbuję przekazać obiekt przez łącze ActionLink do metody w kontrolerze MVC.Html.ActionLink() nie działa, aby przekazać obiekt C#
Składnia brzytwa:
@Html.ActionLink("Export to Excel","ReturnExcelOfViewableResponses",new { SearchObject = Model.SearchObject})
Co faktycznie są wyświetlane w znacznikach:
<a href="/EducationAgency/ReturnExcelOfViewableResponses?SearchObject=DTO.SearchObject" tabindex="29">Export to Excel</a>
Metoda kontroler jest nazywany po prostu w porządku, a więc nie ma powodu, aby umieścić tutaj. Co należy zrobić, aby rzeczywiste wartości zostały przekazane do actionLink zamiast DTO.SearchObject
? Według HTML.ActionLink method wygląda na to, że mam odpowiednią składnię (używając MVC 4).
Dzięki! To było to. Zgaduję, że to nowy format MVC 4? – levininja
@levininja - nah, wbrew temu, o czym mówi odpowiedź w twoim pytaniu, jestem pewien, że nie było dużych różnic między MVC 1, 2, 3 i 4 dla tych metod. Ta funkcja jest rzadko używana w porównaniu z przekazywaniem anonimowego obiektu (jak na przykład w pytaniu). W obu przypadkach przekazany obiekt definiuje wartości tras - a właściwości (pierwszego poziomu) obiektu są (ostatecznie) zamieniane na parametry zapytania przez odbicie - nie ma znaczenia, jaki to obiekt. Ale anonimowy obiekt, który przekazujesz w swoim pytaniu, ma tylko jedną właściwość "pierwszego poziomu": SearchObject. – JimmiTh