現在、私たちは2つのWebサイトを開発していますが、1つのデータベースを共有しています。ログインなどUser.Identity wrong wrong user
サイトAとサイトBのIDユーザエンティティ定義は
public class UserA : IdentityUser
{
...
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<UserA > manager)
{
var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
// Add custom user claims here
return userIdentity;
}
}
public class UserB : IdentityUser
{
...
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<UserB > manager)
{
var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
// Add custom user claims here
return userIdentity;
}
}
ユーザーAとユーザーBのエンティティは、データベース内の異なる表にマッピングされている以下の通りですアカウント設定。
問題が
- を起動し、同じブラウザでWebサイトAとB以下の通りである
- ログインサイトB - 問題はない
- ログインサイトA - 問題はない
更新ウェブサイトBのインデックスページ、ユーザー名はウェブサイトAにログインしたものを表示します。間違っていると、ユーザー名はcshtmlの下に表示されます:
<div>@User.Identity.Name</div>
詳しいアイデアはありますか?
ありがとう –