Id の取得は非常に簡単で、これで解決しました。
ただし、2 番目の質問はもう少し複雑です。
したがって、これは現在すべてプレリリースのものですが、直面している一般的な問題は、ユーザーを新しいプロパティ (または質問の Items コレクション) で拡張する場所です。
すぐに使用できるファイルはIdentityModel
、Models フォルダーの下にあります (執筆時点)。そこにはいくつかのクラスがあります。ApplicationUser
とApplicationDbContext
。のコレクションを追加するには、これが Entity Framework で使用している通常のクラスである場合と同様に、クラスItems
を変更する必要があります。ApplicationUser
実際、内部をざっと見てみると、ID 関連のすべてのクラス (ユーザー、ロールなど) が適切なデータ注釈を備えた単なる POCO であるため、EF6 とうまく連携していることがわかります。
AccountController
次に、 DbContext を使用することを認識できるように、コンストラクターにいくつかの変更を加える必要があります。
public AccountController()
{
IdentityManager = new AuthenticationIdentityManager(
new IdentityStore(new ApplicationDbContext()));
}
ログインしているユーザーのユーザー オブジェクト全体を取得することは、正直言って少し難解です。
var userWithItems = (ApplicationUser)await IdentityManager.Store.Users
.FindAsync(User.Identity.GetUserId(), CancellationToken.None);
その行で作業が完了し、必要に応じてアクセスできるuserWithItems.Items
ようになります。
HTH