我在我的應用中使用SimpleMembership
,並且當我需要獲取當前用戶的userId
時我使用WebSecurity.CurrentUserId
但這調用了數據庫,我需要將此調用減少爲數據庫。如何在用戶登錄時創建自定義BaseController以保留關於用戶的數據
這就是爲什麼我要創建BaseController : Controller
存儲userId
這裏。什麼是實施這個最好的方法?
我可以創建:
public class BaseController : Controller
{
public int CurrentUserId { get; set; }
...
並登錄設置這個值後。但我相信這不應該那麼簡單。
''ICustomPrincipal是什麼? 'ContextHelper.GetHttpContextBase()。user = user;'用戶可以是我的用戶權限類嗎? – 1110
如前所述,ICustomPrincipal是我的實現。如果你的用戶屬於不同的類型,你顯然需要改變它。重點是你應該將你當前登錄的用戶設置爲HttpContext的User屬性。 – im1dermike