Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Proposal: UseSystemCommandLine extension for IHostBuilder

Đang mở
#2,688 1 bình luận 8 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
csharp
Lĩnh vực
cli

Hướng nghiên cứu

Đề xuất tập trung vào Host.CreateDefaultBuilder(args), một extension UseSystemCommandLine được đề xuất, ParseResult và DI. Hãy bắt đầu bằng cách theo dõi cách các API này hiện tương tác với nhau trong repository. Để được xem là hoàn tất, cần có một thiết kế additive đã được thống nhất và coverage cho việc parsing, --help và validation, cùng với cấu hình post-parse tùy chọn.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Hi team,

while building .NET apps (console, WPF, Windows-Service) on top of System.CommandLine, I often combine it with Microsoft.Extensions.Hosting.
Today each app must:
• parse args manually,
• inject ParseResult into DI,
• handle --help / validation,
• wire optional post-parse configuration.

I propose a small host extension:

Host.CreateDefaultBuilder(args)
    .UseSystemCommandLine(rootCommand, args, (parseResult, services) =>
    {
        // optional post-parse configuration
    });

Benefits:
• Unified startup for console, WPF and service apps
• Single parse before building the host
• DI-friendly access to ParseResult or a typed accessor

This would live as an additive helper, so no breaking change.

Would you consider such an addition?
I’m happy to draft a PR if the idea fits the roadmap.

Thanks!

Ngôn ngữ chính
C#
Star
3.7k
Fork
434
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của dotnet/command-line-api

Tất cả issue của dotnet/command-line-api

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.