라이브러리에 대한 구성 설정 제공: App.config의 대안
실행 가능한 애플리케이션과 달리 라이브러리(DLL)는 다음에 직접 액세스할 수 없습니다. app.config 파일. 그러나 이를 사용하는 애플리케이션 간의 호환성을 보장하면서 라이브러리별 구성 설정을 저장할 수 있습니다.
별도의 구성 파일 활용
한 가지 접근 방식은 DLL과 함께 제공되는 별도의 구성 파일. 파일 이름은 DllName.dll.config라는 특정 규칙을 따릅니다. app.config와 달리 이 파일은 애플리케이션에 의해 자동으로 로드되지 않습니다.
구성 파일을 로드하고 읽으려면 사용자 정의 기능을 정의할 수 있습니다.
string GetAppSetting(Configuration config, string key) { // Retrieve the configuration element for the specified key KeyValueConfigurationElement element = config.AppSettings.Settings[key]; // Check if the element exists and has a non-empty value if (element != null && !string.IsNullOrEmpty(element.Value)) return element.Value; // Return an empty string if the key does not exist or has no value return string.Empty; }
이 기능을 사용하려면, Configuration 클래스의 인스턴스를 가져와 GetAppSetting에 전달할 수 있습니다.
Configuration config = null; // Determine the location of the executable's configuration file string exeConfigPath = this.GetType().Assembly.Location; // Attempt to load the configuration file try { config = ConfigurationManager.OpenExeConfiguration(exeConfigPath); } catch (Exception ex) { // Handle the error here, indicating that the DLL has no satellite configuration file } if (config != null) { // Read a setting using the custom function string myValue = GetAppSetting(config, "myKey"); // ... Use the setting as needed }
System.Configuration 네임스페이스에 대한 참조를 포함하고 설정하는 것을 기억하세요. DLL을 사용한 배포를 보장하려면 .config 파일의 "출력 디렉터리에 복사" 속성을 "항상 복사"로 설정하세요.
위 내용은 app.config를 사용하지 않고 라이브러리가 구성 설정에 어떻게 액세스할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!