看Asp.net Boilerplate 1.1.3.0源碼時發現有一個NotNullAttribute的定義和27處的引用,就是不知道它的作用,當然顧名思義是可以的,就是不知道它是怎么判斷的,在哪里判斷非空呢?攔截器里也沒有找到,而且奇怪的是命名空間是JetBrains.Annotations,
而JetBrains是一家為開發人員做開發工具的公司,所以Google了一下,找到了一篇文章:
ReSharper: Using [NotNull] to generate better code
ReSharper:使用[NotNull]生成更佳的代碼.看了一下文章內容是讓ReSharper生成更具可讀性和在為空時給出警告,具體就不翻譯了,有興趣的看原文吧.