可能的空引用分配警告对我来说似乎是假的
Possible null reference assignment warning seems bogus to me
下面的代码给了我一个警告,但我不明白为什么。
client.Host = Settings.Host;
warning CS8601: Possible null reference assignment.
此处client
和Settings
都不为空。 client.Host
和 Settings.Host
都是 string?
.
类型
因此,虽然它可能是一个空引用赋值,但它应该无关紧要,因为目标变量允许空值。
注意 Host
属性 声明中的 DisallowNull 属性。
Specifies that null is disallowed as an input even if the
corresponding type allows it.
[DisallowNull]
public string? Host
由于它是在 System.Diagnostics.CodeAnalysis
命名空间中声明的,因此 Visual Studios 代码分析器将考虑到这一点。
字符串?已经声明了,intellisense 肯定会在某些情况下将其取为可空值。
您可以使用 AllowNullAttribute class 其中:
Specifies that null is allowed as an input even if the corresponding type disallows it.
例如:
[AllowNullAttribute]
public string Host
这样你就不会收到那些烦人的警告了!
下面的代码给了我一个警告,但我不明白为什么。
client.Host = Settings.Host;
warning CS8601: Possible null reference assignment.
此处client
和Settings
都不为空。 client.Host
和 Settings.Host
都是 string?
.
因此,虽然它可能是一个空引用赋值,但它应该无关紧要,因为目标变量允许空值。
注意 Host
属性 声明中的 DisallowNull 属性。
Specifies that null is disallowed as an input even if the corresponding type allows it.
[DisallowNull]
public string? Host
由于它是在 System.Diagnostics.CodeAnalysis
命名空间中声明的,因此 Visual Studios 代码分析器将考虑到这一点。
字符串?已经声明了,intellisense 肯定会在某些情况下将其取为可空值。
您可以使用 AllowNullAttribute class 其中:
Specifies that null is allowed as an input even if the corresponding type disallows it.
例如:
[AllowNullAttribute]
public string Host
这样你就不会收到那些烦人的警告了!