文章來源:https://github.com/dotnet/aspnetcore/issues/39504
轉載自知乎:https://zhuanlan.zhihu.com/p/469359820
每個列表就是一個連結,大家看個大概,感興趣的點擊上面的原文或者網站同步文章連結,公眾號就不貼連結了,貼了也點擊不了...
ASP.NET Core 執行階段
伺服器 - 功能
以下是我們計劃在 .NET 7 版本中新增到伺服器的一些功能亮點:
- 新增對輸出快取的支援 #27387
- 使用 Kestrel+YARP 共用連接埠 #39640
- 用於 ARM64 的 ANCM #39281
- Kestrel 透過 HTTP/2 支援 WebSockets #7801
- OCSP 裝訂支援 Kestrel #4762
- Kestrel 的速率限制 - 將背壓應用於接受連線的設計機制 #13295
- [主題] 支援將 .NET Framework 應用程式遷移到 .NET Core #40078
伺服器 - 效能
.NET 6 是伺服器效能的一個重要版本,我們希望在 .NET 7 中進一步改進,如下所示:
- 連線效能改進 #39846
- 允許伺服器記憶體池收縮 #27394
- 為 HTTP.sys 伺服器啟用核心回應緩衝 #14455
- 使用 Channels #30235 提高 HTTP/2 效能
HTTP/3 支援
HTTP/3 支援作為 .NET 6 中的預覽功能提供。對於 .NET 7,我們希望完成它並使其成為受支援的功能。
- HTTP/3:UseHttps 配置 #34858
- 實作 Http3 靜態回應頭壓縮 #33980
- 對 HTTP/3 的動態表支援 #28433
- HTTP/3:刪除非最終 h3 ALPN #35032
- HTTP/3:在 .NET 7 中預設啟用 Kestrel #36486
ASP.NET Web 框架
Minimal APIs
- 透過分組 #36007 改進最小 API 路由
- 新增對端點篩選器的支援 #37853
- [史詩] .NET 7 中的 OpenAPI #37098
- 擴展為 Minimal API 自訂參數繫結的能力 #35489
- 向最小端點新增防偽 (anti-csrf) 支援 #38630
- 為各個端點/操作產生安全方案 #39761
- 支援繫結請求體為 Stream/ReadOnlySequence<byte> 或 ReadOnlyMemory<byte>/ReadOnlySpan<byte> #38153
- 考慮更好的 API 來配置 JsonOptions 以實現最少的操作/路由到程式碼 #39226
- 使 IResult 方法更具可測試性 #37502
- Minimal API 不支援從查詢或標頭繫結到 StringValues #36726
- 最小操作 - 來自查詢字串繫結的方法簽名中的陣列支援 #32516
- ProblemDetails 的使用在整個 ASP.NET Core #32957 中不一致
- 為授權配置最少的 API 應該非常簡單且特色 #34545
- 最小 API 的設計驗證 #30666
- [Epic]:Minimal APIs + MVC #36637 分析器(改善開發者體驗)
SignalR
- 支援從用戶端呼叫返回值 #5280
- 重新整理 SignalR 的驗證權杖 #5297
- [Epic] SignalR 應該有一個 C++ 用戶端 #5301(改進現有的 C++ 用戶端)
Rate Limiting
- 完成非通用速率限制器的實作(固定視窗、滑動視窗、令牌桶、並發限制器) #37381
- 設計通用速率限制 API #37383
- 在 aspnetcore 中實作速率限制中介軟體 #37384
- 重新設計目前的 aspnetcore 並發限制器中介軟體以使用新的抽象和實作 #38306
- Yarp 實作的速率限制 #37387
- Kestrel 的速率限制 - 將背壓應用於接受連線的設計機制 #13295
- 將速率限制抽象/API 移動到 dotnet/runtime #37385
gRPC (dotnet-gRPC)
- [EPIC] gRPC JSON 轉碼 grpc/grpc-dotnet#1583 (gRPC/HTTP)
Orleans
- 實作 POCO Grains orleans#7351
- 穀物持久性的可配置序列化程式 orleans#7471
- 刪除 SMS 提供者 orleans#7475
- 實作無狀態服務抽象 orleans#7469
- [史詩]:在 Orleans 中將工作流實作為原語 orleans#7487
- [史詩]:改善 Orleans 客戶部署到 Azure orleans#7486 的體驗
- 簡化流配置抽象 orleans#7473
- 為 aspnetcore orleans#7479 新增 Orleans 範本
ASP.NET Web UI
Blazor Hybrid
- 帶有 maui 的 Blazor 無法使用 <InputSelect> 或 <select> maui#4325
- Blazor 桌面原則:全球準備 maui#2532
- Blazor Desktop 測試基礎架構和計劃 maui#2543
- 支援開啟外部 URL 的可配置性 maui#4338
- MAUI Blazor 應用程式上的熱重載不起作用。 maui#2527
- Blazor 桌面:支援 auth maui#2529
- Blazor 桌面原則:安全 maui#2540
- Blazor 桌面原則:效能 maui#2531
- Blazor 桌面原則:可訪問性 maui#2541
- Blazor 桌面原則:DPI 意識 maui#2549
- Blazor 桌面開發工具啟用 maui#2542
- 文件:Blazor 混合演練/入門 maui#3684
- Blazor 混合專案範本更新 maui#4127
- [Blazor webview] blazor webview maui#4441 的例外處理
Razor Compiler
- 當型別具有附加約束時,泛型 Blazor 組件無法正確推斷其型別 #25588
- 更新 Razor 編譯器以更自由地使用 global:: #18757
- 透過內部遙測報告的編譯器崩潰問題 #38877
- 透過內部遙測報告的編譯器崩潰問題 #38878
- 透過內部遙測報告的編譯器崩潰問題 #38879
- Blazor CascadingTypeParameter 問題 #38479
- 為 5.0 應用新增 SDK 快照測試 #28489
- 在程式碼區塊上方有一個未閉合的表單會使所有內容變為藍色 #27133
- 遠離 Razor 在設計時/執行時生成不同的程式碼。 #30669
- Razor 編輯器抱怨標籤未關閉 #30573
- 在 Razor 語法樹中定位擁有者可能會失敗 #36689
Blazor
- 能夠在同一文件中執行多個 Blazor 伺服器/Web 組件應用程式 #38128
- 為 NavigationManger 公開位置變更事件 #14962
- 呼叫 InvokeAsync(StateHasChanged) 會導致頁面回退到預設文化特性 #28521
- 執行清理 Web 範本的過程 #30162
- 空 Blazor 專案範本 #32832
- 考慮運送 ObjectGraphDataAnnotationsValidator / ValidateComplexTypeAttribute #28640
- 產品化自訂元素支援套件 #38447
- 改進 Blazor 中的預呈現和驗證體驗 #27592
- 暫停和恢復 Blazor 應用程式 #27576
- Blazor 用於顯示無法透過 HTTP 端點存取的影像的影像元素 #25274
- 設計方案:繫結 get/set/after 修飾詞 #39837
- 用於解決 Blazor 伺服器上的短暫一次性用品的設計 #26676
- Blazor 暫停和恢復伺服器端 Blazor 電路 #30344
- 處理大型二進位資料(檔案和媒體)的特定組件 #30290
- 啟用與第三方資產管理解決方案的整合 #38445
- 組件在熱重載更新期間不會重置其接收到的參數 #31272
- 為模型繫結和路由新增 DateOnly 和 TimeOnly 支援 #34591
- 對其他方案更好的 MSAL 支援 #38122
- 如何使用 IHttpClientFactory #25758 在 Blazor Server 中配置 HttpClient 基底位址
- 對電路壽命的更多控制(監視電路活動並從用戶端/伺服器終止的能力) #30287
- 伺服器端 Blazor:為 Circuit Eviction #17866 提供 API/擴展點
- 真正的多執行緒(在支援的瀏覽器上) #17730
- 針對 browser-wasm 的開發人員可以使用 Web Crypto APIs runtime#40074
- 繼續改進 Mono 方法體替換 runtime#57365
MVC
- EndpointRouting #23041 中的 IRouter.GetVirtualPath 替代方案
- 允許匹配路由而不捕獲參數 #27996
- 十進位欄位的本地化數字格式和錯誤的輸入類型 #6566
- 連結生成改進 #38121
- LinkTagHelper 不應使用內嵌指令碼 #14736
- 新增對 FromServices 出現在 DI #39667 中的型別的隱式推斷的支援
- 推斷 FromBody.AllowEmptyBehavior = Allow 基於可空性資訊 #39754
- 考慮新增對 TryParse 作為繫結原語的方式的支援 #39682
- EmptyBodyBehavior.Allow 應該允許缺少 Content-Type #36466
- SkipStatusCodePagesAttribute 應該在 AuthorizeAttribute #10317 之前執行
- ApiExplorer 未正確處理同一操作方法上的多個路由 #26234
- FromServices 根據可空性資訊推斷可選性 #39757
- Razor Pages ComplexTypeModelBinder 無法處理「或者,在 'YModel' 建構函式中將 'X' 屬性設定為非空值」 #21916 的建議