dotnet-add-reference(1)

dotnet add reference

This article applies to: ✔️ .NET Core 3.1 SDK and later versions

NAME

dotnet-add-reference - Adds project-to-project (P2P) references.

SYNOPSIS

    dotnet add [<PROJECT>] reference [-f|--framework <FRAMEWORK>]
         [--interactive] <PROJECT_REFERENCES>
    dotnet add reference -h|--help

DESCRIPTION

The dotnet add reference command provides a convenient option to add project references to a project. After running the command, the <ProjectReference> elements are added to the project file.

    <ItemGroup>
      <ProjectReference Include="app.csproj" />
      <ProjectReference Include="..\lib2\lib2.csproj" />
      <ProjectReference Include="..\lib1\lib1.csproj" />
    </ItemGroup>

  Add a reference to an assembly that isn’t in a project

There’s no CLI command to add a reference to an assembly that isn’t in a project or a package. But you can do that by editing your .csproj file and adding markup similar to the following example:

    <ItemGroup>
      <Reference Include="MyAssembly">
        <HintPath>.\MyDLLFolder\MyAssembly.dll</HintPath>
      </Reference>
    </ItemGroup>

ARGUMENTS

•   PROJECT

    Specifies the project file. If not specified, the command searches the current directory for one.

•   PROJECT_REFERENCES

    Project-to-project (P2P) references to add. Specify one or more projects. Glob patterns (https://en.wikipedia.org/wiki/Glob_(programming)) are supported on Unix/Linux-based systems.

OPTIONS

•   -f|--framework <FRAMEWORK>

    Adds project references only when targeting a specific framework using the TFM format.

•   -?|-h|--help

    Prints out a description of how to use the command.

•   --interactive

    Allows the command to stop and wait for user input or action. For example, to complete authentication. Available since .NET Core 3.0 SDK.

EXAMPLES

•   Add a project reference:

        dotnet add app/app.csproj reference lib/lib.csproj

•   Add multiple project references to the project in the current directory:

        dotnet add reference lib1/lib1.csproj lib2/lib2.csproj

•   Add multiple project references using a globbing pattern on Linux/Unix:

        dotnet add app/app.csproj reference **/*.csproj