2010-05-21 3 views
1

이전에는 응용 프로그램이 global.asa 파일을 통해 시작될 때 연결 문자열을로드하는 데 Singleton Pattern을 사용했습니다.사용자 당 저장된 연결 문자열

각 사용자가 데이터베이스에 대한 고유 연결 문자열을 갖는 프로젝트가 있습니다. 이 연결 문자열을 한 번로드하고 싶습니다. 문제는 각 사용자가 자신의 연결 문자열을 가지고 있기 때문에 싱글 톤 패턴이 나를 위해 작동하지 않는다는 것입니다. 기본적으로 연결 문자열은 동적으로 생성됩니다.

저장하고 싶지 않습니다. 세션입니다. 어쨌든 .NET에서이 작업을 수행하는 영리한 방법이 있다면 알려주십시오.

+0

어떻게 연결 문자열을 사용하고 있습니까? – SLaks

+0

기존 연결 문자열을 사용하고 있습니다. 그런 다음 USER ID와 Password를 데이터베이스에 저장된 특정 ID로 대체하십시오. 그래서 우리는 데이터베이스에 로그인하는 각 사용자를 추적 할 수 있습니다. 사용자가 로그인 할 때 연결 문자열을 한 번 설정하고 jsut이 필요할 때 내 코드를 호출 할 수 있기를 바랍니다. 나는 내가 필요로 할 때마다 그것을 끊임없이 세우고 싶지 않다. – pehaada

답변

2

데이터베이스 연결은 리소스면에서 비용이 많이 들고 사용자 당 하나의 요구 사항을 다시 생각해 보는 것이 좋습니다. 총 사용자 수가 매우 적을 수 있다고 보장 할 수 없다면 (5-10 이하로 말하십시오).

그렇다면 사용자를 나타내는 User 개체에 연결을 저장할 수 있습니다. 또는 사용자 ID를 연결 문자열에 매핑하는 전역 사전이 있어야합니다.

연결 문자열 간의 유일한 차이점이 사용자 이름/암호 인 경우 SQL Server에서 대신 Windows 인증을 사용하고 클라이언트를 가장 할 수 있습니다.

+0

USER 개체에서 무엇을 의미합니까? 현재 USERID는 세션에 저장됩니다. 나는 세션에서 연결 찌르기를 저장하고 싶지 않습니다. – pehaada