Как получить путь решения в C # - PullRequest
0 голосов
/ 13 июня 2018

Мне нужно получить путь, где находится файл решения (.sln).Я пытаюсь с этими строками:

string startupPath = Path.Combine(Directory.GetParent(System.IO.Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName,"abc.txt");

// Read the file as one string. string text = System.IO.File.ReadAllText(startupPath);

, что я получил от другого поста.Но когда я запускаю его, я получаю исключение неавторизованного доступа .Когда я ставлю путь «вручную»: C: \ Users \ yabej \ source \ repos \ tutoriales \ Proyecto 0.1, он работает.

Но мне нужно «автоматически», чтобы быть уверенным, что путь будет правильным, когдая запускаю свой проект на разных компьютерах.Спасибо.

1 Ответ

0 голосов
/ 13 июня 2018

Если вы добавите свой файл (abc.txt) в свое решение, то в свойствах файла вы можете установить для параметра «Копировать в выходной каталог» значение «Копировать всегда».Убедитесь, что для действия сборки установлено значение «Нет».Затем в процессе сборки он будет скопирован в то же место, что и ваш исполняемый файл, и вы можете получить путь, используя

var path = Path.Combine(Directory.GetCurrentDirectory(), "\\abc.txt");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...