현재 작업중인 프로젝트에서 asp.NET 프로파일을 사용하여 메일 링리스트에있는 사용자의 정보와 같은 사용자 정보를 저장합니다.왜 asp.NET 프로필이 그렇게 끔찍한 방식으로 설계 되었습니까?
이제 메일 링리스트에있는 모든 사용자의 목록을 얻으려면 asp.NET 프로필 테이블이 간단하기 때문에 데이터베이스 쿼리를 수행 할 수 없습니다. 모르는 사람들을 위해
은 프로파일 테이블은 두 가지 주요 기둥의 '키'열 및 '값'열을 가지고 있으며, 그들은 그렇게로 구성되어 있습니다
키 : 키 1 : dataType와 : 시작 인덱스 : endIndex : key2 : dataType. . 등
값 : 이 SQL을 사용하여 쿼리 거의 불가능하다
value1value2value3 ..., 그래서 특정 속성은 모든 사용자의 목록을로드하는 것입니다있는 사용자를 찾을 수있는 유일한 옵션 그것을 통해 루프.
회원 수가 150,000 명이 넘는 사이트에서는 당연히 매우 느립니다!
프로필이 이렇게 디자인되었거나 동적으로 생성 된 데이터를 처리하는 데 특별한 이유가 있습니까?
네가 맞아. 프로필 공급자는 많은 양의 데이터로 작성되지 않았습니다. –
예, 동의합니다 저는 회원 ID 속성이있는 별도의 "사용자"클래스를 보유하고 있습니다.이 클래스는 회원 ID GUID와 해당 클래스의 모든 내 프로필 정보를 연결합니다. – Alex