2017-06-10 108 views
0

我擁有帶有個人帳戶的ASP.NET Core應用程序;非常類似於VS2017產生的結果。出於測試目的,我在屬性上放置了[Authorize]屬性。我按預期重定向到登錄頁面,並且我看到該URL爲http://localhost:5000/Account/Login?ReturnUrl=%2FHome%2FAbout - 也如預期的那樣。但是,在POST登錄方法中,ReturnUrl爲空。我在賬戶控制器登錄方法:ASP.NET核心登錄中ReturnUrl爲空

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

我也試過ReturnUrl作爲參數明確,有或沒有[FromQuery]。在所有排列中它是空的。 `<形式:

+0

你使用新{RETURNURL =的Request.QueryString [ 「RETURNURL」]}在@ Html.BeginForm – hasan

回答

1

您應該確保您正在使用

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


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

的看法與taghelpers產生當我將@ViewData [「ReturnUrl」]'改爲''''''''''''''''''''''當我改變'@ViewData [「ReturnUrl」]時''ViewData [「ReturnUrl」]「 @ Model.ReturnUrl「開始工作。謝謝你指點我正確的方向! – Felix

+0

你的歡迎:) – hasan

相關問題