Skip to content

Document .NET 11 file-based apps: DLL includes, dotnet reference, and Native AOT reuse - #55944

Merged
meaghanlewis merged 2 commits into
mainfrom
copilot/add-detail-for-file-based-apps
Sep 11, 2026
Merged

Document .NET 11 file-based apps: DLL includes, dotnet reference, and Native AOT reuse#55944
meaghanlewis merged 2 commits into
mainfrom
copilot/add-detail-for-file-based-apps

Conversation

Copilot AI commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

The file-based apps article was missing coverage of several new .NET 11 capabilities: splitting apps into multiple files, reusing Native AOT build outputs, dotnet reference support, and including compiled DLL references.

#:include enhancements

  • Added *.dllReference item-type mapping so file-based apps can reference prebuilt libraries directly:

    #:include ./libs/MyLibrary.dll
  • Documented that #:sdk, #:property, and #:package can now appear as duplicates across included files as long as their values match, enabling self-contained library files with their own dependencies.

dotnet reference support

  • Added guidance on managing #:project references via the CLI instead of editing directives by hand:

    dotnet reference add --file app.cs ../SharedLibrary/SharedLibrary.csproj
    dotnet reference list --file app.cs
    dotnet reference remove --file app.cs ../SharedLibrary/SharedLibrary.csproj
    

Native AOT build output reuse

  • Added a new "Reuse Native AOT build outputs" subsection describing cached launches (dotnet run --file app.cs, dotnet run app.cs, dotnet app.cs), fallback behavior when cached output doesn't match current arguments, dotnet format support for file-based apps, and how the SDK artifacts layout affects output location.

Each new capability is called out with a version note indicating .NET 11+ availability.


Internal previews

File Preview link
docs/core/sdk/file-based-apps.md Learn preview

Build report

Copilot AI lite review requested due to automatic review settings September 10, 2026 22:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request.


💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

…AOT reuse

Co-authored-by: meaghanlewis <10103121+meaghanlewis@users.noreply.github.com>
Copilot AI changed the title [WIP] Add detail for new features in file-based apps Document .NET 11 file-based apps: DLL includes, dotnet reference, and Native AOT reuse Sep 10, 2026
Copilot AI requested a review from meaghanlewis September 10, 2026 22:56
@meaghanlewis
meaghanlewis marked this pull request as ready for review September 10, 2026 23:14
@meaghanlewis
meaghanlewis requested a review from a team as a code owner September 10, 2026 23:14

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

One moderate issue and three documentation gaps remain unresolved.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details

Suppressed comments (3)

docs/core/sdk/file-based-apps.md:286

  • dotnet run app.cs isn't always a file-based-app launch: the earlier run section says that when a project file exists in the current directory, this form runs that project and passes app.cs as an argument. Listing it unqualified as a cached file-based-app launch is misleading; qualify it with the no-project-file condition or use dotnet run --file app.cs here.
The native AOT command-line path can reuse existing build outputs when it runs an unchanged file-based app. Supported cached launches include `dotnet run --file app.cs`, `dotnet run app.cs`, and `dotnet app.cs`. If the cached output doesn't match the current command arguments, the CLI falls back to the managed path.

docs/core/sdk/file-based-apps.md:88

  • The dotnet reference support isn't limited to #:project: .NET 11 also supports file-based-app references through #:ref, and the CLI can add, list, and remove those references. Because the new section omits that path, users can't discover how to compose multiple file-based apps; please document #:ref and a corresponding --file example, and update the supported-directives list.
Instead of manually editing `#:project` directives, you can use the `dotnet reference` command to manage project references in a file-based app. Use the `--file` option to specify the file-based app:

> [!NOTE]
> `dotnet reference` support for file-based apps is available in .NET 11 and later.

docs/core/sdk/file-based-apps.md:294

  • The new sentence introduces the “SDK artifacts layout” without linking to or explaining how to enable it, and it conflicts with the earlier description of the default output as <temp>/dotnet/runfile/... (line 196). Link to the artifacts output layout article and use the same default-path terminology so readers can configure and locate the output.
When a repository enables the SDK artifacts layout, file-based app outputs are placed under that repository's artifacts directory instead of the default per-user cache.
  • Files reviewed: 1/1 changed files
  • Comments generated: 1
  • Review effort level: Lite

Comment thread docs/core/sdk/file-based-apps.md

@wadepickett wadepickett left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@meaghanlewis, Great work. Approved, assuming the one open item already identified for version scoping is addressed. I will watch for any re-approval needed..

@meaghanlewis
meaghanlewis merged commit 9e18b64 into main Sep 11, 2026
14 checks passed
@meaghanlewis
meaghanlewis deleted the copilot/add-detail-for-file-based-apps branch September 11, 2026 18:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add detail for new features in file-based apps

4 participants