2011-01-13 5 views
3

nhibernate 응용 프로그램에서 데이터베이스에 직접 액세스해야합니다. 다음과 같은 연결 문자열을 얻으려고합니다.nHibernate에서 연결 문자열을 얻으면 암호없이 문자열을 반환합니다.

using (SqlConnection conn = new SqlConnection(this.session.Connection.ConnectionString)) 

그러나 이렇게하면 암호없이 연결 문자열이 반환됩니다.

내가 잘못하고 있니? 연결 문자열을 가져 오는 다른 방법이 있습니까?

+2

왜 그 연결을 사용하지 않니? – flq

+0

Nhibernate와 동일한 연결을 사용하지 않는 것이 좋습니다 – Raphael

답변

5

당신은 NHibernate에 SessionFactory에에서 원시 데이터베이스 연결 (자 NHibernate와 같은 연결 정보를 사용하여)을 얻을 수 있습니다 예 :

IDbConnection을 연결 = yourSessionFactory.ConnectionProvider.GetConnection()

+1

다른 말로하면 연결 문자열이 필요하지 않습니다. 그것은 암호를 억제하는 NHibernate가 아니라 ADO.NET입니다. 그래서 당신은 정말로 그것에 대해 많은 것을 할 수 없습니다 ... 보안 기능입니다. – JulianM

+0

구성 파일을 구문 분석하고 혼자서 얻을 수 있기 때문에 암호를 표시하지 않는 ADO.NET의 아주 어리 석다. – Raphael

+5

ADO.NET은 연결 문자열을 가져 오는 위치를 알 수 없습니다. – flq

관련 문제