看Asp.net Boilerplate 1.1.3.0源码时发现有一个NotNullAttribute的定义和27处的引用,就是不知道它的作用,当然顾名思义是可以的,就是不知道它是怎么判断的,在哪里判断非空呢?拦截器里也没有找到,而且奇怪的是命名空间是JetBrains.Annotations,
而JetBrains是一家为开发人员做开发工具的公司,所以Google了一下,找到了一篇文章:
ReSharper: Using [NotNull] to generate better code
ReSharper:使用[NotNull]生成更佳的代码.看了一下文章内容是让ReSharper生成更具可读性和在为空时给出警告,具体就不翻译了,有兴趣的看原文吧.