Domanda

Sto usando S # Arp Architecture 2.0 con ASP.NET MVC 3.0.Il codice di rasoio in una pagina Master è simile a questo:

 @Html.ActionLink("Logout", "LogOff", "Users", new { style = "color:Blue;" })
.

Per qualche motivo l'app non produce più il link corretto (al disconnessione dell'azione degli utenti del controller) ma piuttosto punta al controller corrente per il disconnesso dell'azione.Non ho cambiato nulla.Dove devo scavare per superare questo per favore?

Il collegamento generato è simile a questo:

CurrentControlloRName / Logoff? Lunghezza= 5

È stato utile?

Soluzione

Stai chiamando un sovraccarico errato dell 'ActionLink Helper.Ecco cosa fai:

@Html.ActionLink(
    "Logout",                         // linkText
    "LogOff",                         // actionName
    "Users",                          // routeValues
    new { style = "color:Blue;" }     // htmlAttributes
)
.

È abbastanza ovvio il motivo per cui questo non produce l'URL corretto.Stando passando "Users" che è un valore di stringa nel luogo in cui l'aiutante si aspetta routeValues che deve rappresentare un oggetto anonimo.

The Overload corretto è:

@Html.ActionLink(
    "Logout",                         // linkText
    "LogOff",                         // actionName
    "Users",                          // controllerName
    null,                             // routeValues
    new { style = "color:Blue;" }     // htmlAttributes
)
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top