문제

microsoft.aspnet.identity.entityframework - 객체 UserIdentity 및 Roleidenity에는 문자열 유형의 ID 필드가 있으므로 생성 된 테이블에는 데이터 유형이 NVARCHARCAR (128)이 있습니다.

이러한 객체 ID 속성이 System.Guid 유형이 아니 어서는 안되며 데이터베이스는 UniqueIdentifer의 데이터 유형을 가지고 있습니까?왜 그렇지?GUID는 새 사용자 및 역할 생성에 삽입됩니다.

도움이 되었습니까?

해결책

Hao Kung id를 변경하는 방법int로 입력하십시오.

키 직렬화 문제를 처리하지 않으려면 문자열 키를 결정 했으므로 EF 기본 구현이 기본 키로 Int를 사용했을 수 있으며 GUID는 임의의 고유 문자열 키를 생성하는 쉬운 방법이었습니다.

다른 팁

API는 API가 스토리지 공급자가 독립적이므로 필드 유형을 가능한 한 일반적인 것으로 보관했기 때문입니다. http://blogs.msdn.com/b/webdev/archive/2013/06/27./introducing-asp-net -identity-membership-system-for-asp-net-applications.aspx

"응용 프로그램 요구 사항 이이 정보가 SharePoint, Azure 테이블 서비스, SQL 데이터베이스 없음과 같은 다른 스토리지 메커니즘에 저장 될 수 있으므로 다른 스토리지 공급자를 연결할 수 있습니다."

문자열 사용자 ID에 대한 또 다른 이유는 문자열이 클레임 API, 특히 Microsoft.AspNet.Identity.IdentityExtensions.GetUserId를 사용하는 System.Security.Claims.Value를 사용하는 문자열이 API를 반환하는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top