C # (. NET)을 사용하여 프로그래밍 방식으로 web.config 변경
web.config
C #을 사용하여 프로그래밍 방식으로 어떻게 수정 / 조작 할 수 있습니까? 구성 개체를 사용할 수 있습니까 web.config
? 그렇다면 구성 개체에를 어떻게 로드 할 수 있습니까? 연결 문자열을 변경하는 전체 예제를 갖고 싶습니다. 수정 후에는 web.config
하드 디스크에 다시 기록해야합니다.
다음은 몇 가지 코드입니다.
var configuration = WebConfigurationManager.OpenWebConfiguration("~");
var section = (ConnectionStringsSection)configuration.GetSection("connectionStrings");
section.ConnectionStrings["MyConnectionString"].ConnectionString = "Data Source=...";
configuration.Save();
이 문서 에서 더 많은 예제를 참조하십시오 . 가장을 살펴 봐야 할 수도 있습니다 .
Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
ConnectionStringsSection section = config.GetSection("connectionStrings") as ConnectionStringsSection;
//section.SectionInformation.UnprotectSection();
section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
config.Save();
web.config 파일은 xml 파일이므로 xmldocument 클래스를 사용하여 web.config를 열 수 있습니다. 업데이트 할 xml 파일에서 노드를 가져온 다음 xml 파일을 저장합니다.
다음은 web.config 파일을 프로그래밍 방식으로 업데이트하는 방법을 자세히 설명하는 URL입니다.
http://patelshailesh.com/index.php/update-web-config-programmatically
참고 : web.config를 변경하면 ASP.NET이 변경 사항을 감지하고 응용 프로그램을 다시로드 (응용 프로그램 풀 재활용)하고 세션, 응용 프로그램 및 캐시에 보관 된 데이터의 효과가 손실됩니다 (세션 상태 가정). InProc이고 상태 서버 또는 데이터베이스를 사용하지 않음).
이것은 AppSettings를 업데이트하는 데 사용하는 방법이며 웹 및 데스크톱 응용 프로그램 모두에서 작동합니다. connectionStrings를 편집해야하는 경우 해당 값을 가져온 System.Configuration.ConnectionStringSettings config = configFile.ConnectionStrings.ConnectionStrings["YourConnectionStringName"];
다음 config.ConnectionString = "your connection string";
. 이 connectionStrings
섹션에 의견 Web.Config
이 있으면 제거됩니다.
private void UpdateAppSettings(string key, string value)
{
System.Configuration.Configuration configFile = null;
if (System.Web.HttpContext.Current != null)
{
configFile =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
}
else
{
configFile =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
}
var settings = configFile.AppSettings.Settings;
if (settings[key] == null)
{
settings.Add(key, value);
}
else
{
settings[key].Value = value;
}
configFile.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection(configFile.AppSettings.SectionInformation.Name);
}
참고 URL : https://stackoverflow.com/questions/2260317/change-a-web-config-programmatically-with-c-sharp-net
'Programing' 카테고리의 다른 글
JPA와 Hibernate를 사용할 때 어떻게 같고 해시 코드를 구현해야 하는가 (0) | 2020.09.04 |
---|---|
자바 스크립트 배열 맵 메서드의 Break 문 (0) | 2020.09.04 |
GAE에서 완벽하게 유효한 XML을 구문 분석 할 때 "내용이 프롤로그에 허용되지 않습니다" (0) | 2020.09.04 |
내 웹앱에서 시간대를 어떻게 처리 할 수 있습니까? (0) | 2020.09.04 |
PDO 연결을 올바르게 설정하는 방법 (0) | 2020.09.04 |