我現在正在開發用戶管理功能。我想補充的授權和重定向用戶到我的登錄頁面,如果他試圖在登錄前訪問這樣的用戶管理頁面:如果未登錄,將用戶重定向到另一個視圖
[HttpGet]
public ActionResult UsersList()
{
if (Session["UserName"] == null)
{
RedirectToAction("Login", "Login");
}
else
{
var User = new User();
User.usersList = DBManager.Instance.GetUsersList();
User.PreferedLanguages.Add(new SelectListItem { Text = "ENGLISH", Selected = true, Value = "ENGLISH" });
User.PreferedLanguages.Add(new SelectListItem { Text = "DUTCH", Value = "DUTCH" });
return View(User);
}
}
但我應該返回正確的操作結果的看法?此代碼不能編譯,我得到以下錯誤:
錯誤4「WebApplication9.Controllers.UserManagementController.UsersList()」: 不是所有的代碼路徑返回一個值> E:\工作\ WebApplication9 \控制器\ UserManagementController.cs
此時是否有可能返回另一個控制器視圖?
'return RedirectToAction(「Login」,「Login」);'(你錯過了'return') –
你是否正在使用所有的操作方法?你應該實現某種身份驗證(_i.e。formas authentication_)並使用'[Authorize]'屬性來爲你處理所有事情。 –
@AdilMammadov:它是否適用於asp.net mvc?我是新來的。所以想到通過保持Session的用戶名來做到這一點。 – ViVi