"데이터"라고하는 코드 디렉토리의 상대 코드로 XML 파일에 데이터를 저장하는 WPF 응용 프로그램이 있습니다. 로컬 XML 저장소를 사용하여 WPF 응용 프로그램을 개발/배포하는 데 가장 적합한 상대 경로 솔루션은 무엇입니까?
나는 이러한 방법으로 데이터 디렉토리에 상대 경로를 얻을 :protected string ApplicationPath
{
get { return System.IO.Path.GetDirectoryName(System.Reflection.Assembly
.GetExecutingAssembly().CodeBase); }
}
protected string ApplicationDataPath
{
get { return ApplicationPath + @"..\..\..\Data\"; }
}
public string FullXmlDataStorePathAndFileName
{
get
{
return ApplicationDataPath + GetItemTypeIdCode() + ".xml";
}
}
이 디버그 이후 테스트를 위해 작동 또는 .exe가 다시 프로젝트에 가서 데이터에 액세스합니다 관한 것이다.
XML 파일을 저장할 때 문제 1 번이 발생합니다. "URI 형식이 잘못되었습니다."오류가 발생합니다. "......을 처리 할 수없는 것 같습니다. \ "경로의 일부를 저장하는 경우 :
xmlDoc.Save(FullXmlDataStorePathAndFileName);
문제 # 2는 그 난 후, (누군가가 압축을 풀고 한 .exe를 두 번 클릭 있도록 예를 들어 다운로드가 사용할 수 있도록) 내 응용 프로그램을 배포 할 때 .xml 파일은 .exe과 동일한 디렉토리에 있거나 Data 디렉토리에 하나씩 더 있어야 응용 프로그램의 각 인스턴스가 자체 XML 파일을 읽고 쓸 수 있습니다.
가장 적합한 솔루션은 무엇입니까? 요구 사항은 다음과 같습니다
XML 파일이 프로젝트와 투명에서 로컬로해야한다, 예를 들어, 개발 및 테스트 할 때 개발하는 동안, 때문에, 기본 데이터는 예를 들어,의 경우 F5 키를 눌러
직선 전달 방법 항상 새로 고쳐 "최근 경우 복사" "출력 디렉토리에 복사"있는 Visual Studio에서 XML 파일을 편집하고 사람이 개발했습니다
시작시 "릴리스"디렉토리와 파일 (.EXE 및 원본 XML 파일)을 모두가하고 XML 파일에 .EXE 점에서 경로를 압축하는 이와 같은 상대 디렉토리에 로컬 XML 데이터 소스가 있으면 좋은 해결책입니까?