Document .NET 11 file-based apps: DLL includes, dotnet reference, and Native AOT reuse - #55944
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
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
meaghanlewis
marked this pull request as ready for review
September 10, 2026 23:14
meaghanlewis
approved these changes
Sep 11, 2026
Contributor
There was a problem hiding this comment.
🟡 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.csisn'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 passesapp.csas an argument. Listing it unqualified as a cached file-based-app launch is misleading; qualify it with the no-project-file condition or usedotnet run --file app.cshere.
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 referencesupport 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#:refand a corresponding--fileexample, 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
wadepickett
approved these changes
Sep 11, 2026
wadepickett
left a comment
Contributor
There was a problem hiding this comment.
@meaghanlewis, Great work. Approved, assuming the one open item already identified for version scoping is addressed. I will watch for any re-approval needed..
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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 referencesupport, and including compiled DLL references.#:includeenhancementsAdded
*.dll→Referenceitem-type mapping so file-based apps can reference prebuilt libraries directly:Documented that
#:sdk,#:property, and#:packagecan now appear as duplicates across included files as long as their values match, enabling self-contained library files with their own dependencies.dotnet referencesupportAdded guidance on managing
#:projectreferences via the CLI instead of editing directives by hand:Native AOT build output reuse
dotnet run --file app.cs,dotnet run app.cs,dotnet app.cs), fallback behavior when cached output doesn't match current arguments,dotnet formatsupport 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
Build report