die übergabe mehrerer Parameter in @html.actionlink()
Bin ich über actionlink übergeben parameter "code" auf den controller für ein Element, und erhalten Sie details für das Element auf der neuen Ansicht (tatsächlich, es ist der controller, dass Anrufe 3 partielle Ansichten)
Ich auch übergeben müssen Sie den parameter "Beschreibung" aber das ist nur ein Wert, die angezeigt werden müssen wie auf der neuen Ansicht und hat keine Verwendung in der controller (ich verwende "code" zu filtern Datensätze in einer Datenbank).
@foreach (var item in Model.MyModel)
{
<tr>
<td>
@Html.ActionLink(item.code, "Index", "ControlerName", new { pos = item.code.ToString(), desc = item.desc.ToString() }, null)
</td>
}
dieser actionlink geben Sie mir die url /ControlerName?pos=code&desc=desc
Gibt es eine Möglichkeit zu senden "desc" - parameter, so dass es nicht gesehen werden, in der url aber nur angezeigt, wie in der neuen Ansicht?
InformationsquelleAutor onedevteam.com | 2014-02-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Keine, Html.ActionLink nur existiert, um eine url generieren und plop es in ein Anker-tag. Sollten Sie sich vermehren-die desc-Wert aus dem Index Aktion, wenn er getroffen wird.
InformationsquelleAutor rossisdead
Übergibt man die parameter wie haben Sie es so, dass die anderen controller und view ist sich bewusst, dass die Daten, die beibehalten wird.
Wäre eine alternative zum speichern Ihrer Beschreibung in einer "lookup-Tabelle", die Sie identifizieren können, indem
id
, so dass Sie nur brauchen, um passieren dieid
und es werden dieController's
oderViewModel's
Verantwortung angucken.Controller:
InformationsquelleAutor Dennis Rongo
Verwenden form-tag und übergeben alle Parameter, die Sie wollen, um die actionresult und wieder andere actionresult(die tragen Sie Ihre gewünschte url), die Sie wollen.
razor fordert ; wenn dabei mit(Html.BeginForm())
InformationsquelleAutor user3311522