2013-12-25 4 views
3

У меня есть шаблоны электронной почты (и почтовый сервер) в отдельном проекте библиотеки классов. Я получаю путь к взглядам (копию Ouput каталога = TRUE), как это:AppDomain.CurrentDomain.RelativeSearchPath is null in Unit Test

var basePath = AppDomain.CurrentDomain.RelativeSearchPath; 
var path = Path.Combine(basePath, "Views", viewname + ".cshtml"); 

Когда я пытаюсь запустить этот код в блоке BasePath теста проекта является null.But это не должно быть пустыми !!

Кто может объяснить мне -

  1. почему BasePath является недействительным?
  2. как исправить?
+0

Вы установили его через 'AppDomainSetup.PrivateBinPath'? –

+0

нет, я не использовал этот объект –

ответ

6

По MSDN:

Частные узлы размещены в одной и той же структуры каталогов как приложения. Если путь, указанный свойством RelativeSearchPath , не находится в AppDomainSetup.ApplicationBase, он игнорируется.

Это свойство возвращает значение, заданное с помощью AppDomainSetup.PrivateBinPath.

Сначала вы должны установить AppDomainSetup.PrivateBinPath.