我试图在单元测试期间启动 AspNetDevelopmentService,我发现AspNetDevelopmentServerAttribute可以这样使用。
它工作得很好:
[AspNetDevelopmentServer("http://localhost:49409/", @"C:\Projects\WcfTestPlatform1\Bench.Services")]
public void TestMethod1()
{
var channel = new ChannelFactory<IMyContract>("*").CreateChannel();
var result = channel.SayHello("Titi");
Assert.AreEqual("Hello Titi", result);
}
正如msdn所说,环境变量可以在服务路径中使用。所以我尝试了这样的路径:[AspNetDevelopmentServer("http://localhost:49409/", @"%SolutionDir%Bench.Services")]
,但这没有奏效......
有没有办法实现我在这里尝试做的事情:设置相对于解决方案的服务路径?……
谢谢!
编辑 1:我尝试了%PathToWebRoot%
变量::[AspNetDevelopmentServer("http://localhost:49409/", @"%PathToWebRoot%")]
它工作正常,但它不能替换 SolutionDir 相对路径。所以我现在就用它。如果有人知道任何其他可能等同于我正在寻找的方式,请不要犹豫。