> 데이터 베이스 > MySQL 튜토리얼 > .NET Core 2.1 ID에서 사용자 및 해당 역할을 효율적으로 검색하는 방법은 무엇입니까?

.NET Core 2.1 ID에서 사용자 및 해당 역할을 효율적으로 검색하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-12-04 17:08:12
원래의
306명이 탐색했습니다.

How to Efficiently Retrieve Users and Their Roles in .NET Core 2.1 Identity?

.NET Core 2.1 ID에서 사용자 및 관련 역할 검색

많은 프로젝트에는 사용자 및 관련 역할을 관리하고 표시하기 위한 사용자 관리 기능이 필요합니다. 역할. 그러나 이 정보를 얻는 것이 간단하지 않을 수 있습니다.

해결책:

처음에는 IdentityUser의 역할 속성을 활용하는 것이 일반적이었지만 .NET Core에서는 제거되었습니다. 최근 커뮤니티 제안에 따른 한 가지 접근 방식은 추가 클래스를 도입하고 데이터베이스 구조를 수정하는 것입니다.

수정된 데이터베이스 구조:

다음을 소개합니다. 클래스:

  • ApplicationUserRole
  • ApplicationRole

UserRoles 속성과 새 클래스에 대한 참조를 사용하여 ApplicationUser 확장

DbContext 수정 사항:

  • 새 클래스를 수용하기 위해 올바른 일반 매개변수를 사용하여 IdentityDbContext에서 상속합니다.
  • 관계를 설정하고 외래 키 제약 조건을 설정하기 위해 OnModelCreating 메서드를 재정의합니다.

스타트업 아이덴티티 구성:

  • 이전 ID 구성을 유지하고 올바른 일반 매개변수가 사용되는지 확인합니다.

사용자 역할에 대한 Eager Loading:

마지막으로 사용자를 검색할 때 UserRoles 및 관련 항목을 적극적으로 로드합니다. 역할:

this.Users = userManager.Users.Include(u => u.UserRoles).ThenInclude(ur => ur.Role).ToList();
로그인 후 복사

ASP Core 2.2 고려 사항:

  • IdentityUserRole은 이제 문자열이 아닌 유형으로 Guid를 사용하여 정의됩니다.
  • 마이그레이션을 허용하려면 ModelBuilder 코드를 제거해야 할 수도 있습니다.

이 접근 방식을 따르면 .NET Core 2.1 ID에서 사용자 및 관련 역할을 효과적으로 검색할 수 있습니다.

위 내용은 .NET Core 2.1 ID에서 사용자 및 해당 역할을 효율적으로 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿