0

我相信.NET Identity 3無法在現有(v4.5)ASP.NET解決方案上運行,但需要.NET Core。我無法更新到.NET Core。有沒有解決方法?如果不是,那麼人們應該如何從ASP.NET Membership遷移到ASP.Net Identity?。現有解決方案中的.Net Identity 3

回答

0
  1. 首先,我需要說明的是,ASP.NET Core(與Identity 3一起使用)不需要.NET Core。它可以用於.NET Core或.NET Framework 4.6.1(或更高版本)。

  2. 我猜你在這兩種情況下(會員和身份)使用默認方法時,有關用戶,角色,密碼等的所有信息都存儲在某個數據庫中。

所以,從會員到身份遷移的最佳方法是:

  • 使用默認的模板,並創建一個新的ASP.NET核心項目「認證」開啓
  • 然後編寫一個小控制檯程序,將所有與用戶相關的信息從舊會員表移到新會員(由ASP.NET Identity自動創建)
  • 然後將所有其他控制器和視圖逐個移動。

這裏唯一的問題是,身份不會識別用Membership創建的密碼散列。要解決它,您需要定義您自己的IPasswordHasher接口實現,並將其註冊到DI容器中,如this article中所述。