2015-09-05 143 views
1

我從ArrayList繼承並覆蓋Add方法(請參見下文)。 很奇怪Add()方法已將對象值參數標記爲[NotNull],並且documentation表示「該值可以是空引用」。正確覆蓋[NotNull]屬性

無論如何,我現在標記爲[CanBeNull](通過ReSharper註釋屬性)。 但IntelliSense仍然給我緩存文檔,標記參數爲[NotNull]

爲什麼不重寫文檔?

/// <summary> 
/// Bla bla 
/// </summary> 
/// <param name="value"> 
/// This Attribute is marked as CanBeNull. 
/// </param> 
/// <returns></returns> 
public override int Add([CanBeNull] object value) 
{ 
    if (value != null) 
    { 
     // Do sth. 
    } 
} 
+0

這不是一個屬性,它是一個方法參數 - 使用正確的術語,以避免任何人願意回答。另外,請考慮使用'List '而不是'ArrayList'。 –

回答

3

雖然與[CanBeNull]覆蓋[NotNull]屬性由ReSharper的空性分析尊重及按Ctrl + Shift + F1窗口也顯示,ReSharper的錯誤地忽略在參數信息。我建立了RSRP-447900