2008-08-19 3 views
2

런타임시 DB 연결을 구성하는 방법을 찾고 있습니다. 특히 엔터프라이즈 라이브러리를 사용합니다. 나는 * .Data.Configuration (또는 이것에 가까운 것 ... 내 머리의 꼭대기를 회상하지 않는다) 어셈블리가 있다는 것을 알지만, interwebs에 대해서는별로 알지 못한다. 문제를 복잡하게 만드는 것은 API 도움말이 Vista에서 깨졌습니다..Net (특히 EntLib)의 런타임 구성

Configuration cfg = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
ConnectionStringSettings connection = new ConnectionStringSettings(); 
connection.Name = "Runtime Connection"; 
connection.ProviderName = "System.Data.OleDb"; 
connection.ConnectionString = "myconstring"; 
cfg.ConnectionStrings.ConnectionStrings.Add(connection); 
cfg.Save(ConfigurationSaveMode.Modified); 

ConfigurationManager.RefreshSection("connectionStrings"); 
var runtimeCon = DatabaseFactory.CreateDatabase("Runtime Connection"); 

를 그리고 그것이 내가 원하는 걸 제공하지만, 그것은 영구적으로의 App.config을 편집 :

지금, 나는이 해결 방법을 발견. 물론 되돌아 가서 변경 사항을 삭제할 수는 있지만,이 번거로운 과정을 거치지는 않을 것입니다.

+0

아직 답을 찾고 있습니다. 어떤 아이디어? – xanadont

답변

0

저장하지 않으려면 cfg.Save 명령을 실행할 필요가 없습니다.

구성 개체는 더 이상 필요하지 않을 때까지 변경 사항을 저장합니다.

0

아니요, EntLib (및 다른 도구로 생각되는 경우)에서 변경 사항을 확인하려면 저장해야합니다.