ASP0003: Yol işleyicileriyle model bağlama özniteliklerini kullanmayın
Değer | |
---|---|
Kural Kimliği | ASP0003 |
Kategori | Kullanım |
Hataya neden olan veya bozulmayan düzeltme | Hataya neden olmayan |
Neden
Yol işleyici temsilcisi, özniteliği olan bir [Bind]
parametre içerir.
Kural açıklaması
Yol işleyicisi uç noktaları yalnızca , [FromBody]
vb. gibi [FromRoute]
MVC özniteliklerinin bir alt kümesini destekler. Desteklenmeyen öznitelikler yoksayılır ve beklenmeyen bağlama davranışına neden olur. Örneğin, aşağıdaki kod bir çözümleyici uyarısına neden olur:
app.MapGet("/todos/{id}", ([Bind] int id) => new Todo { Id = id });
İhlalleri düzeltme
Bu kuralın ihlalini düzeltmek için uç noktanın izin verilen model bağlama özniteliklerinden birini kullandığından emin olun.
app.MapGet("/todos/{id}", ([FromRoute] int id) => new Todo { Id = id });
Uyarıların ne zaman bastırılması gerekiyor?
Bu kuraldan bir uyarıyı gizlemeyin. Yanlış model bağlama kurulumu, çalışma zamanında parametreleri çözümlerken beklenmeyen davranışlara neden olabilir.
ASP.NET Core
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin