2014-05-19 1 views
0

업그레이드를 수행 할 때 어떻게 사용자의 App.config를 올바르게 패치 할 수 있습니까?App.config 패치/업데이트

구성 변경 사항이 손실되면 이전 파일을 덮어 쓰는 것이 문제가되지만 새로운 값이 추가되거나 이전 값이 변경되면 이전 파일을 유지할 수 없습니다.

+1

조심스럽게? 구성 파일은 단지 XML 일뿐입니다. 언제든지 그것을 읽고 원하는대로 병합 할 수 있습니다. 또한 .Net의 기존 "병합 구성"기능이 있다고 생각하지 않습니다. 사용자가 별도의 파일 (예 : 글로벌 사용자 대 사용자)의 설정을 변경하려면 전체 문제를 피할 수 있었을 것입니다 - 미래를 고려하십시오. –

답변

0

지금 사용한 솔루션은 기기 별 설정을 user.config에 적용하는 것입니다. 완벽하게 작동합니다!

0

음, 업그레이드 프로세스를 처리하는 방법과 경미한/주요 버전 업그레이드를 위해 고급 설계 및 계획을 얼마나 잘 수행했는지에 따라 다릅니다. 주석 중 하나가 명시된대로 실제 로켓 과학은 없습니다. xml 파일 만 다루고 있습니다. 또한 .NET Framework에는 개발자가 System.Configuration 네임 스페이스에있는 구성 파일을 처리 할 수있게 해주는 잘 디자인 된 기본 제공 API가 있습니다.

이제 데스크톱 개발을 할 때 과거의 방법 (예전의 학교 방식 ... 많이 변경되지 않았다고 생각합니다)을 수행했습니다. 웹 서비스가 두 종점 최신 버전의 응용 프로그램과 최신 응용 프로그램 설치 프로그램의 패키지 버전을 제공하는 또 다른 버전을 공개하는 경우 최종 사용자의 데스크톱에 설치된 응용 프로그램은 사용자가 응용 프로그램을 시작할 때마다이 서비스를 호출합니다. 버전 이전 및 설치를 처리 할 별도의 프로세스 (업데이터)를 시작합니다. 이렇게하면 설정 파일, 로컬 저장소 (있는 경우) 등 모든 설정 마이그레이션을 처리 할 수 ​​있습니다.

나는 이것이 최선의 해결책이라고 주장하지는 않지만 많은 유연성과 제어권을 제공합니다. 프로세스가 가장 중요합니다. 대형 소프트웨어 회사가 따르는 과정은 정확히 동일합니다. 그러나 약간의 계획이 필요합니다.