3
我試圖寫一個自定義的FxCop代碼分析規則 將從包含嵌套太深代碼塊, 方法警告開發者,並會督促他們重新因子搞的一塌糊塗。與代碼分析無限循環的FxCop反思
ex。我試圖避免以下情況:
if(condition)
{
foreach(var item in items)
{
if(anotherCondition)
{
for(var product in item.Products)
{
// even more nested statement blocks...
}
}
}
}
我得到一個計算器,當我重寫VisitBlock(Block block)
方法
計數塊的深度,因爲很明顯,有從屬性的一個循環參考 該塊本身爲 。 即對於某些我:block.Statements [i] ==塊
爲什麼存在這樣的循環參考?如何避免它? 謝謝!
請提供重現問題的示例代碼(適用於規則和目標)。 – 2011-02-10 13:06:51