3
我需要跟蹤用戶登錄到MSSQL服務器數據表與MVC5 Web應用程序上的asp.net身份什麼是實現這一點的最佳方式。如何跟蹤用戶登錄與Asp.net身份MVC5 Web應用程序
我需要跟蹤用戶登錄到MSSQL服務器數據表與MVC5 Web應用程序上的asp.net身份什麼是實現這一點的最佳方式。如何跟蹤用戶登錄與Asp.net身份MVC5 Web應用程序
如果您實現應用程序的認證部件,如在this tutorial描述,其中可以觸發跟蹤的地方很容易找到,調用SignInManager.PasswordSignInAsync
之後。我建議跟蹤所有嘗試,而不僅僅是成功登錄。有幾種方法可以做到這一點,這一切都取決於您現有的體系結構,您已經使用的框架等。如果您還沒有任何東西,可以按照this tutorial的說法在MVC5中啓動並運行實體框架數據上下文,但是您將創建一個實體,而所有用於跟蹤用戶登錄的無用的字段(如時間戳,用戶名和登錄嘗試的結果),例如:
public enum LoginResult
{
Success,
LockedOut,
RequiresVerification,
Failure
}
public class UserLogin
{
public DateTime DateTime { get; set; }
public LoginResult LoginResult { get; set; }
public string Username { get; set; }
}
,你只需添加到您的數據上下文:
var appContext = new AppContext();
appContext.UserLogins.Add(new UserLogin { DateTime = DateTime.UtcNow, LoginResult = result /* Depending of result */, Username = model.EMail });
appContext.SaveChanges();
這是非常簡單的,但你明白了。當然這會花費你一些進一步的研究和開發。
謝謝你的回答我想知道是否有任何簡單的方法由Identity提供來實現這種跟蹤。我只想跟蹤用戶登錄時間和註銷時間 – Wella
@Wella,我不認爲並瞭解Identity Framework提供的任何方法 – thmshd