共用方式為


CA1002:不要公開泛型清單

型別名稱

DoNotExposeGenericLists

CheckId

CA1002

分類

Microsoft.Design

中斷變更

中斷

原因

型別包含 List 型別的外部可見成員、傳回 List 型別,或其簽章 (Signature) 包含 List 參數。

規則描述

List 是針對效能而非繼承設計的泛型集合。List 不包含虛擬成員,讓它更容易變更繼承的類別的行為。下列的泛型集合是專為繼承所設計,且應該加以公開 (Expose),以代替 List

如何修正違規

若要修正此規則的違規情形,請將 List 型別變更成專為繼承設計的其中一個泛型集合。

隱藏警告的時機

除非不想將引發這則警告的組件 (Assembly) 當做可重複使用的程式庫,否則請勿隱藏此規則的警告。例如,在已微調效能的應用程式中,因為使用了泛型清單而使得效能提升,所以您可以放心地隱藏這則警告。

相關規則

CA1005:避免在泛型類型上包含過多參數

CA1010:集合應該實作泛型介面

CA1000:不要在泛型類型上宣告靜態成員

CA1006:不要在成員簽章中巢狀化泛型類型

CA1004:泛型方法應該提供類型參數

CA1003:必須使用一般事件處理常式執行個體

CA1007:建議在適當時使用泛型

請參閱

參考

泛型 (C# 程式設計手冊)