最简单的方法是确保您的 ASP.NET 5 Web 项目和测试项目共享一个公共父目录。例如:
Solution
|-- Web
| |-- project.json
|-- Tests
| |-- project.json
这样,Roslyn 将能够解析不同子目录中的符号。
当然,您还需要将 Tests 项目中的 依赖项 添加到 Tests\project.json 文件中的 Web 项目中:
{
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
"Web": "1.0.0-*"
},
"frameworks": {
"dnx451": { },
"dnxcore50": { }
}
}
如果它们不能有共同的父目录,您可以随时在 根目录 中添加一个global.json 文件,其中包含包含源代码的子目录列表。
Solution
|-- global.json
|-- Web
| |-- project.json
|-- Tests
| |-- project.json
其中global.json 包含:
{
"sources": ["Web", "Tests"]
}
在 Visual Studio 2015 中使用“添加引用”
如果在 Visual Studio 2015 中使用 添加引用 对话框从 ASP.NET 5 Web 项目中引用类库项目时,您会收到以下错误:
无法添加对 的引用。
这意味着您尝试引用的项目不是DNX 项目,而是普通的类库 项目。您需要确保类库是 ASP.NET 类库(包) 项目才能引用它。