>

web.config 를 수정/조작하는 방법  프로그래밍 방식으로 C #? 구성 오브젝트를 사용할 수 있습니까? 그렇다면, web.config 를로드하는 방법  구성 객체로? 연결 문자열을 변경하는 전체 예제가 필요합니다. 수정 후 web.config  하드 디스크에 다시 써야합니다.


  • 답변 # 1

    여기 코드입니다 :

    var configuration = WebConfigurationManager.OpenWebConfiguration("~");
    var section = (ConnectionStringsSection)configuration.GetSection("connectionStrings");
    section.ConnectionStrings["MyConnectionString"].ConnectionString = "Data Source=...";
    configuration.Save();
    
    

    이 기사에서 더 많은 예를 보려면 가장을 살펴 봐야 할 수도 있습니다.

  • 답변 # 2

    Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
    ConnectionStringsSection section = config.GetSection("connectionStrings") as ConnectionStringsSection;
    //section.SectionInformation.UnprotectSection();
    section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
    config.Save();
    
    

  • 답변 # 3

    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이고 상태 서버 또는 데이터베이스를 사용하지 않는다고 가정합니다.)

  • 답변 # 4

    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);
    }
    
    

  • 이전 HTTP POST를 사용하여 HTML 및 PHP로 여러 파일을 선택하고 업로드하려면 어떻게해야합니까?
  • 다음 c# - XML을 객체로 역 직렬화하는 방법