Как прочитать локальный customconfig.xml с xElement в C # - PullRequest
0 голосов
/ 02 июня 2010

Я добавил customConfig.xml в свой проект.

Я пытаюсь прочитать файл в xElement, потому что мне нужен путь к файлу.

Любая помощь очень ценится.

Спасибо

1 Ответ

4 голосов
/ 02 июня 2010

Если вы хотите скомпилировать файл в сборку, вы можете сделать следующее:

Перейдите к свойствам вновь добавленного файла customConfig.xml и установите для параметра «Build Action» значение «Embedded Resource». Следующий фрагмент кода позволяет вам затем создать TextReader. Затем TextRead можно использовать для чтения файла в XDocument:

Assembly assembly = Assembly.GetExecutingAssembly();
TextReader textReader = new StreamReader(assembly.GetManifestResourceStream(String.Format("{0}.{1}", "NameSpace.Of.File", "customConfig.xml")));
XDocument doc = XDocument.Load(textReader);

foreach (XElement element in doc.Root.Nodes())
{
    // do stuff
}

Если вы хотите иметь файл XML помимо вашей сборки (не скомпилированный в сборку), вы можете установить для параметра «Действие сборки» значение «Нет», а для параметра «Копировать в выходной каталог» - «Всегда копировать». Путь может быть найден следующим образом. Не проверял.

String strPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase);

XDocument doc = XDocument.Load(strPath);

foreach (XElement element in doc.Root.Nodes())
{
    // do stuff
}

Надеюсь, это поможет! Florian

...