Assembly.GetExecutingAssembly () не ищет в правильном пути - PullRequest
2 голосов
/ 19 ноября 2010

Я читаю встроенный XML-файл, используя

C #:

var AssemblyRef = Assembly.GetExecutingAssembly();
TextReader reader = new StreamReader(AssemblyRef.GetManifestResourceStream("Text.xml"));

Он работал некоторое время, но начинал выдавать ошибки.Я проследил путь, который он ищет, и ищет dll в корне папки bin, а не в папке Debug или release.

После публикации это нормально, но для локальной разработкиЯ не могу заставить работать мою единственную функцию.

При компиляции она настроена на отладку.Любая помощь будет отличной.

Ответы [ 2 ]

1 голос
/ 19 ноября 2010

У вас есть:

  • Измененное имя сборки ИЛИ
  • Измененное пространство имен ИЛИ
  • Перемещение ресурса в папку в проекте
0 голосов
/ 22 ноября 2010

Я сменил вызов на это и все нормально.

TextReader reader = new StreamReader(Assembly.GetExecutingAssembly().AssemblyRef.GetManifestResourceStream("Text.xml"));

Сделав звонок, одно заявление заставило его работать. Я не уверен почему.

...