2017-06-10 4 views
0

Ich habe ASP.NET Core-Anwendung mit individuellen Konten; sehr ähnlich zu dem, was von VS2017 generiert wird. Zu Testzwecken setze ich [Authorize] Attribut auf About() Aktion in Home-Controller. Ich werde wie erwartet zur Anmeldeseite weitergeleitet, und ich sehe, dass die URL http://localhost:5000/Account/Login?ReturnUrl=%2FHome%2FAbout ist - auch wie erwartet. In der POST-Anmeldemethode ist ReturnUrl jedoch null. Ich habe Methode im Account-Controller Anmelden:ReturnUrl ist null in ASP.NET Core Login

[HttpPost] 
[AllowAnonymous] 
[ValidateAntiForgeryToken] 
public async Task<IActionResult> Login(LoginInputModel model) { 
... 
} 

Ich habe auch versucht ReturnUrl als Parameter explizit mit oder ohne [FromQuery]. In allen Permutationen ist es null.

+0

suchen Sie eine neue verwenden {ReturnUrl = Request.QueryString [ "ReturnUrl"]} in @ Html.BeginForm – hasan

Antwort

1

sollten Sie sicher sein, dass Sie verwenden

Html.BeginForm("Login", "Account", new {ReturnUrl = Request.QueryString["ReturnUrl"] }) 


[HttpPost] 
[AllowAnonymous] 
[ValidateAntiForgeryToken] 
public async Task<IActionResult> Login(LoginInputModel model, string ReturnUrl) { 
... 
} 
+0

Die Ansicht wurde mit taghelpers erzeugt: '

'Wenn ich' @ViewData ["ReturnUrl"] 'in' geändert habe @ Model.ReturnUrl' es begann zu arbeiten. Danke, dass du mich in die richtige Richtung weist! – Felix

+0

Ihre Begrüßung :) – hasan

Verwandte Themen