Я искал вокруг, но я не нашел решения для этой проблемы: я хочу создать библиотеку классов, в которой есть файл конфигурации под подкаталогом Configuration. Я хочу, чтобы библиотека классов была развернута где угодно, и я хочу, чтобы она находила файлы конфигурации, зная ее собственное местоположение.Как получить текущий каталог в библиотеке классов?
Предыдущие попытки с Assembly.GetExecutingAssembly().Location
не помогли.
Было бы вернуть местоположения TEMP, такие как
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\7c00e0a3\38789d63\assembly\dl3\9c0a23ff\18fb5feb_6ac3c901
вместо желанной
bin/Configuration
пути.
Итак:
- Может ли библиотека классов знать о своем собственном местоположении на диске?
- Как бы я идти о сценарии тестирования Вайтинга для этой функции, так как это, кажется, что изменение каталогов на основе того, как вы запустите приложение (отладки внутри VS, развертывания на IIS, и т.д.)
Почему бы не включить конфигурацию в файл app.config приложения и использовать ConfigurationManager в библиотеках классов? –
Возможно, вы захотите уточнить свой вопрос (для лучшей поисковой возможности позже), что это ASP.NET. Для настольных приложений GetExecutingAssembly() работает отлично. – Stu
@Justin: Я хочу, чтобы библиотека классов была независимой от приложения-вызывающего. @Stu: Оба. Я хочу создать библиотеку классов, которая может использоваться как для консольных приложений, так и для веб-приложений. Библиотека классов не должна заботиться о том, кто ее называет. – nandos