Blazor: Blazor uygulamalarında yol önceliği mantığı değiştirildi

Blazor yönlendirme uygulamasındaki bir hata, yolların önceliklerinin nasıl belirlendiğini etkiledi. Bu hata Blazor uygulamanızdaki isteğe bağlı parametrelerle tüm yolları veya yolları yakalar.

Sürüm kullanıma sunulmuştur

5.0.1

Eski davranış

Hatalı davranışla, daha düşük önceliğe sahip yollar daha yüksek önceliğe sahip yollar üzerinde değerlendirilir ve eşleştirilir. Örneğin, {*slug} yol öncesinde /customer/{id}eşleştirilir.

Yeni davranış

Geçerli davranış, ASP.NET Core uygulamalarında tanımlanan yönlendirme davranışıyla daha yakından eşleşir. Çerçeve, önce her segment için yol önceliğini belirler. Yolun uzunluğu, yalnızca ikinci bir ölçüt olarak bağlarını kesmek için kullanılır.

Değişiklik nedeni

Özgün davranış, uygulamadaki bir hata olarak kabul edilir. Hedef olarak Blazor uygulamalarındaki yönlendirme sistemi, ASP.NET Core'un geri kalanındaki yönlendirme sistemiyle aynı şekilde davranmalıdır.

Blazor'ın önceki sürümlerinden 5.x sürümüne yükseltiyorsanız bileşendeki PreferExactMatchesRouter özniteliğini kullanın. Bu öznitelik, doğru davranışı kabul etmek için kullanılabilir. Örneğin:

<Router AppAssembly="@typeof(Program).Assembly" PreferExactMatches="true">

PreferExactMatches olarak ayarlandığındatrue, yol eşleştirme joker karakterler yerine tam eşleşmeleri tercih eder.

Etkilenen API’ler

Hiçbiri