2017-10-10 77 views
0

我使用ASP.NET成員在我的項目和以往用戶創建的,當我手動確認這個代碼他的電子郵件地址:我怎麼能恢復電子郵件確認在ASP.NET成員

string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id.ToString()); 
await ConfirmEmail(user.Id.ToString(), code); 

通過這種方式,用戶不需要通過發送到他的電子郵件地址的確認鏈接來驗證他的登錄,這是項目要求。

現在我想通過C#代碼恢復此過程。我想不確定他的電子郵件地址,那麼我如何才能達到這個要求?

+0

當用戶被確認時,對數據進行的實際更改是什麼?看起來你只需要更新數據以再次修改該值。 – David

+0

我想使用內置的aspnet成員資格方法(如果可用) –

回答

0

所以,有一個「內置方法」,但它沒有公開在您可以訪問的UserManager上。

的的UserManager有一個內部屬性StoreIUserEmailStore繼承,當你問它來確認的電子郵件地址(ConfirmEmailAsync調用IUserEmailStore.SetEmailConfirmed),並在您檢查,以查看是否有電子郵件確認其具有通過的UserManager使用的方法。

SetEmailConfirmed方法採用布爾參數confirmed,因此可以將其設置爲truefalse