| 價值 | |
|---|---|
| 規則識別碼 | ASP0003 |
| 類別 | 用法 |
| 修正是破壞性或非破壞性 | 不間斷 |
原因
路由處理程式委派物件包含具有 [Bind] 屬性的參數。
規則描述
路由處理程式端點只支援MVC屬性的子集,例如 [FromRoute]、[FromBody]等。不支援的屬性會被忽略,並導致非預期的系結行為。 例如,下列程式代碼會產生分析器警告:
app.MapGet("/todos/{id}", ([Bind] int id) => new Todo { Id = id });
如何修正違規
若要修正此規則的違規,請確定端點使用其中一個允許的模型系結屬性。
app.MapGet("/todos/{id}", ([FromRoute] int id) => new Todo { Id = id });
隱藏警告的時機
請勿 不要 隱藏此規則的警告。 不正確的模型系結設定可能會導致在運行時間解析參數時發生非預期的行為。