ReSharper代码注释异步任务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReSharper代码注释异步任务相关的知识,希望对你有一定的参考价值。
是否有可能标记async Task<T>
的结果可以为空?使用Attribute [CanBeNull]不起作用,因为async Task的返回值永远不为null。
[CanBeNull] // not working...
private async Task<T> doSomeFancyAsyncStuff([NotNull] object icantbenull) { ...
答案
你可以使用Resharper ItemCanBeNullAttribute
可以应用于从IEnumerable派生的类型的符号以及Task和Lazy类的符号,以指示集合项,Task.Result属性或Lazy.Value属性的值可以为null。
适用于您的示例:
[ItemCanBeNull]
public async Task<string> GetSomeName() {
var time = DateTime.Now;
if(time.Second == 30) {
return "Jimmy";
} else {
return null;
}
}
以上是关于ReSharper代码注释异步任务的主要内容,如果未能解决你的问题,请参考以下文章