警告 CA2015:請勿針對衍生自 MemoryManager<T> 的型別定義完成項

從 .NET 5 開始,系統會預設啟用 .NET 程式碼分析器規則 CA2015。 這項規則會針對衍生自 MemoryManager<T> 並定義完成項的任何型別產生組建警告。

變更描述

從 .NET 5 開始,.NET SDK 包含 .NET 原始程式碼分析器。 這些規則中有些會預設啟用,包括 CA2015。 如果您的專案包含違反此規則的程式碼,且設定為將警告視為錯誤,則此項變更會中斷您的組建。

規則 CA2015 會標示衍生自 MemoryManager<T> 且定義完成項的型別。 為衍生自 MemoryManager<T> 的型別新增新增完成項很容易發生錯誤。 系統會認為原本可於 Span<T> 內取得的原生資源遭到清除,而清除時 Span<T> 可能仍在使用。

導入的版本

5.0

  • 移除完成項定義。 如需詳細資訊,請參閱 CA2015

  • 若要完全停用程式碼分析,請在專案檔中將 EnableNETAnalyzers 設定為 false。 如需詳細資訊,請參閱 EnableNETAnalyzers

受影響的 API

無法透過 API 分析偵測。