dotnet add reference
添加项目到项目的引用。
执行添加项目引用后,<ProjectReference>
元素会被添加到项目文件中。
<ItemGroup>
<ProjectReference Include="app.csproj" />
<ProjectReference Include="..\lib2\lib2.csproj" />
<ProjectReference Include="..\lib1\lib1.csproj" />
</ItemGroup>
参数
PROJECT
添加引用的项目。如果没指定,默认为当前目录中的项目。
// app 项目引用 lib 项目
dotnet add app/app.csproj reference lib/lib.csproj
// app 项目引用 lib 项目,不指定项目文件
dotnet add reference ../lib/lib.csproj
PROJECT_REFERENCES
被引用的项目。可以使用通配符匹配指定多个项目。通配符匹配只支持基于 Unix/Linux 的终端。
// app 项目引用 lib1 和 lib2 项目
dotnet add app/app.csproj reference lib1/lib1.csproj lib2/lib2.csproj
// app 项目引用匹配的项目
dotnet add app/app.csproj reference **/*.csproj
选项
-h|--help
打印帮助信息。
dotnet add reference -h
-f|--framework <FRAMEWORK>
仅针对特定框架添加引用。
假如 app 项目中指定了 netcoreapp1.1
和 netcoreapp2.0
两个目标框架,lib 项目中指定了 netstandard2.0
,如果 app 直接引用 lib 会有兼容性问题,那么,可以只针对 netcoreapp2.0 引用 lib。
dotnet add app/app.csproj reference lib/lib.csproj --framework netcoreapp2.0
执行上面的命令后,项目文件中的引用如下。
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<ProjectReference Include="..\lib\lib.csproj" />
</ItemGroup>
dotnet list reference
列出项目中的引用。
参数
PROJECT
要列举引用的项目。如果不指定,默认为当前目录中的项目。
// 列举指定项目的引用
dotnet list app/app.csproj reference
//列举当前目录中项目的引用
dotnet list reference
dotnet remove reference
移除项目引用。
dotnet remove reference
和 dotnet add reference
参数选项都一样,一个移除引用,一个添加引用。
// 从 app 项目中移除 lib
dotnet remove app/app.csproj reference lib/lib.csproj
// 从当前目录中的项目中移除 lib1 和 lib2
dotnet remove reference ../lib1/lib1.csproj ../lib2/lib2.csproj
// 从 app 项目中移除匹配的项目
dotnet remove app/app.csproj reference **/*.csproj