Убедитесь, что файл XML является частью вашего проекта .csproj. (Если вы видите это в обозревателе решений, вы в порядке.)
Установите для свойства «Построить действие» для файла XML значение «Встроенный ресурс».
Используйте следующий код для извлечения содержимого файла во время выполнения:
public string GetResourceTextFile(string filename)
{
string result = string.Empty;
using (Stream stream = this.GetType().Assembly.
GetManifestResourceStream("assembly.folder."+filename))
{
using (StreamReader sr = new StreamReader(stream))
{
result = sr.ReadToEnd();
}
}
return result;
}
Когда вы хотите прочитать содержимое файла, просто используйте
string fileContents = GetResourceTextFile("myXmlDoc.xml");
Обратите внимание, что "assembly.folder" следует заменить именем проекта и папкой, содержащей файл ресурсов.
Обновление
На самом деле assembly.folder
следует заменить пространством имен, в котором класс, созданный в той же папке, что и файл XML, будет по умолчанию. Обычно это defaultNamespace.folder0.folder1.folder2.....
.