Добавление файла xlsx в проект C#
Я пишу приложение, функция которого - открывать файл .xlsx с помощью библиотеки interop.Excel и считывать оттуда данные. Файл .xlsx находится в папке программы, в метод Open я передаю полный путь к этому файлу:
public string ExcelFileName = $@"C:\Users\{Environment.UserName}\Desktop\C#\Fourier transform\NewFolder1\shk_task.xlsx"
exc.Workbooks.Open(Filename: ExcelFileName);
Но если перенести программу в другую папку, программа не найдёт файл excel. Как добавить файл .xlsx в ресурсы в проект, чтобы программа открывалась из любой папки?
Ответы (1 шт):
Частично подошло решение из комментариев по ссылке: https://ru.stackoverflow.com/a/607352/220553 У меня сработали 2 варианта:
public string ExcelFileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory,"shk_task.xlsx");
и
public string ExcelFileName = Path.Combine(Directory.GetCurrentDirectory(), "shk_task.xlsx");
Но работает это при условии, что файл добавлен во внедренные ресурсы и указано свойство "Копировать в выходной каталог: всегда копировать".
При сборке приложение копирует файл в Debug или Release и оттуда запускает его.