簡體   English   中英

Visual Studio代碼分析錯誤CA 1006

[英]Visual Studio Code Analysis Error CA 1006

代碼分析拋出錯誤CA1006:每當我們在接口契約中定義自定義定義時, 不要將泛型類型嵌套在成員簽名中。 處理這個所謂的設計問題的最佳方法是什么。 對此有任何深刻的想法。

感謝您花費寶貴的時間來完成這項工作。

例:-

 Task<IList<Employee>> LoadAllEmployeeAsync();

CA1006: 不要在成員簽名中嵌套泛型類型

我認為規則很清楚。 然而,其背后的原因是,任何使用您的類的人都必須經歷一個復雜的過程來實例化復雜的參數並降低新庫的采用率。

但是,如果我們考慮一下,在這種情況下,該規則沒有多大意義。 首先,您有一個嵌套的復雜泛型返回類型,它可能沒有類似參數那么糟糕。 其次,我不認為該規則是異步方法的設計。

我建議在展示此返回類型的方法上禁止它。 不要濫用它,因此請確保僅將其放在異步方法上,並且僅在返回類型很復雜時:

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures", Justification="This is an async method.")]
Task<IList<Employee>> LoadAllEmployeeAsync();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM