2013-09-12 4 views
3

Я хочу иметь возможность добавить каталог, содержащий кучу файлов, в мой проект. Этот каталог должен быть включен в сборку. Затем я должен иметь возможность получить путь к этому каталогу во время выполнения.Включает каталог в путь сборки

Есть ли способ, которым я могу это сделать?

Cheers.

+0

'App.Config' файл – Johan

+0

Вы говорите о ресурсах? Что вы пытаетесь достичь? – Romoku

ответ

1

Включите папку в проект и установите для свойства Copy to output directory значение true.

Для ссылки на путь к приложению использовать System.AppDomain.CurrentDomain.BaseDirectory

0

Вам нужно добавить файлы в свой проект и помечать их как файлы контента.

Затем, чтобы получить доступ к ним во время выполнения используйте следующий фрагмент кода:

string[] resourceNames = Assembly.GetExecutingAssembly().GetManifestResourceNames(); 
     foreach (var resourceName in resourceNames) 
     { 
      if(resourceName.StartsWith("<assembly short name>.<directory name>")) 
      { 
       // do something 
      } 
     } 
2

Вы можете добавить каталог со всеми файлами и установить свойство каждого файла следующим образом. Это позволит убедиться, что все файлы будут скопированы в текущую директорию.

  • Build Action: Содержание
  • Copy Always: Скопировать Всегда (в зависимости от вам нужно)

доступ к файлам в каталоге во время выполнения

Вы можете получить доступ с помощью relelative путь

bool isFileExisit = File.Exist("DirectoryName/FileName"); 

Доступ к файлам с полным путем

String fullFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DirectoryName", "FileName"); 
Смежные вопросы