提问人:Luke Vo 提问时间:8/8/2023 更新时间:8/8/2023 访问量:76
异步方法的返回值用“NotNullIfNotNull”修饰,仍返回可能为 null 的变量
Async method's return decorated with "NotNullIfNotNull" still returns variable that may be null
问:
根据此文档,我可以用属性装饰方法。但是,以下代码不起作用:NotNullIfNotNull
using System.Diagnostics.CodeAnalysis;
var a = await Test("abc");
Console.WriteLine(a.Length);
[return: NotNullIfNotNull(nameof(input))]
static async Task<string?> Test(string? input)
{
return await Task.FromResult(input);
}
我仍然收到警告(取消引用可能为空的引用):a.Length
我怀疑 我可以确认问题只发生在(返回)方法上。我应该如何解决这个问题?Task
导致了这个问题。async
Task
答: 暂无答案
评论
Task<T>
T