2011-01-31 4 views
0

런타임시 연결 문자열을 구성 할 수 있어야하며, 가장 간단한 방법은 구성 파일을 사용하는 것입니다. 그러나 ConnectionString.FromAppSetting 또는 ConnectionString.FromConnectionStringWithKey를 사용할 수 없습니다. 내 데이터 액세스 어셈블리는 콘솔 응용 프로그램, 양식 및 웹에서 참조됩니다. 내 프로젝트에 "설정"을 추가 할 수는 있지만 dll 일 뿐이며 실제 app 빌드 대상에 app.config를 넘겨주지는 않습니다.nhibernate 구성에 연결 문자열을 어떻게 삽입합니까?

나는 너무 드문 경우라고 기대하지 않습니다. 일반적으로 이것이 처리되는 방식은 무엇입니까? 이것은 종속성 주입 (별도의 파일에서 구성 할 수있는 것)을 사용하는 주요 예입니까? 연결 단위 문자열을 '작업 단위 (UOW)'객체에 제공하지만 정적으로 수행하려고합니다. config와 sessionfactory를 한 번만 빌드하십시오.

나는 분명히 필요한 경우 명확하게 할 수 있지만, 묻는 가장 좋은 방법은 확실하지 않습니다.

답변

2

hibernate.cfg.xml을 사용할 수 있습니다 (모든 plattaform에서 작동 함). 은 또한 다음과 같은

  1. 상속 DriverConnectionProvider
  2. 재정을 ConnectionString 속성을, 어디서나 연결 문자열을 읽을 수 있습니다.
  3. 코드 또는 XML로 nhibernate 구성에 새 연결 제공자를 제공하십시오.

DriverConnectionProvider에서 ServiceLocation을 사용하거나 unhaddins에서 EnhancedBytecodeProvider를 사용할 수 있습니다. 검색 bytecodeprovider와 Fabio Maulo를 Google에 추가하십시오.

다음은 예입니다. Dynamically change user info in connection string

+0

Perfect. 난 그냥 개체 모델의 오른쪽 부분에 대한 뉘앙스 또는 옳은 방향으로 찔러가 필요했습니다. – hometoast

+0

링크가 죽었습니다. 아마도 [이 기사] (http://nhibernate.info/doc/howto/various/dynamically-change-user-info-in-connection-string) – quetzalcoatl

관련 문제