Как передать динамическое значение атрибуту pathtowebapp [AspNetDevelopmentServer(identifier,pathtowebapp)] в методе модульного теста

У меня есть проект модульного тестирования, в котором я использую атрибут AspNetDevelopmentServer для локального тестирования моей службы wcf. Это работает нормально, когда я даю аргументы, жестко, как это

[AspNetDevelopmentServer("Test",@"C:\\Users\\LocalSourcePath")]

Когда я пытаюсь передать этот аргумент через переменную (динамически), как

string path = @Directory.GetParent((Directory.GetParent(Path.GetDirectoryName((new Uri(System.Reflection.Assembly.GetExecutingAssembly().CodeBase)).LocalPath))).Parent.FullName).FullName+"\\Publish";
[AspNetDevelopmentServer("Test",path )]

Выдает ошибку вот так:

"Аргумент атрибута должен быть выражением константы, выражением typeof или выражением создания массива типа параметра атрибута"

Есть ли другой способ передать динамическое значение в атрибут? Спасибо заранее.

1 ответ

Попробуйте использовать относительные пути к другому проекту (предположительно в том же решении Visual Studio в C:\Users\LocalSourcePath):

[AspNetDevelopmentServer("Test", @"..\..\MyProject")]

Пути относительно вашей папки MyProjectTests\bin\debug

Другие вопросы по тегам