2 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
因此,為了回答您的問題,該Parse
方法使用當(dāng)前語言環(huán)境將您的字符串轉(zhuǎn)換為整數(shù)。我猜在您的情況下,這GetUserID()
將采用您當(dāng)前語言環(huán)境期望逗號(hào)作為小數(shù)點(diǎn)的格式。因此,提供可選參數(shù)CultureInfo.InvariantCulture
將使您的區(qū)域設(shè)置文化不敏感。另一種方法是提供第二個(gè)可選參數(shù)來提供IFormatProvider。
要解決您的錯(cuò)誤,請(qǐng)將此行設(shè)置為:
(id)=>Int32.Parse(id.GetUserId(),CultureInfo.InvariantCulture)
有關(guān)CultureInfo.InvariantCulture的更多信息。

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
回答我的問題。
在我的 startup.auth.cs
如前所述,我遵循了所有 microsoft 文檔。
運(yùn)行項(xiàng)目時(shí),我不斷收到錯(cuò)誤消息。
在 CookieAuth 下的 ConfigureAuth() 中添加 CultureInfo 作為第二個(gè)參數(shù)。
這是我完成的項(xiàng)目代碼。
{
// Enables the application to validate the security stamp when the user logs in.
// This is a security feature which is used when you change a password or add an external login to your account.
OnValidateIdentity = SecurityStampValidator
.OnValidateIdentity<ApplicationUserManager, ApplicationUser, int>
(
validateInterval: TimeSpan.FromMinutes(30),
regenerateIdentityCallback: (manager, user) =>
user.GenerateUserIdentityAsync(manager),
getUserIdCallback:(id) => Int32.Parse(id.GetUserId(),
CultureInfo.InvariantCulture)
//getUserIdCallback:(id) => (Int32.Parse(id.GetUserId()))
)
}
- 2 回答
- 0 關(guān)注
- 145 瀏覽
添加回答
舉報(bào)