EndpointName 中繼資料未自動設定
在 .NET 6 RC 1 中引進以自動為端點設定 IEndpointNameMetadata
的行為已還原。 IEndpointNameMetadata
將不再自動設定,以避免發生重複端點名稱的問題。
導入的版本
ASP.NET Core 6 RC 2
先前的行為
在 ASP.NET Core 6 RC 1 中,已針對參考方法群組的端點自動設定 IEndpointNameMetadata
。 例如,下列程式碼會透過將 EndpointName
設定為 GetFoo
,來產生 /foo
的端點。
app.MapGet("/foo", GetFoo);
新的行為
從 ASP.NET Core 6 RC 2 開始,不會自動設定 IEndpointNameMetadata
。 下列程式碼不會產生任何 IEndpointNameMetadata
。
app.MapGet("/foo", GetFoo);
中斷性變更的類型
此變更可能會影響來源相容性。
變更原因
自動設定端點名稱中繼資料的行為並不穩固,而且會導致對不同端點設定相同名稱的問題。 如需詳細資訊,請參閱 dotnet/aspnetcore#36487。
建議的動作
若要設定中繼資料,建議您使用 WithName
擴充方法來手動設定 IEndpointNameMetadata
。
app.MapGet("/foo", GetFoo).WithName("GetFoo");
受影響的 API
N/A