if (ddl.SelectedValue != "")
使用Fortify分析我的代码后,Fortify向我展示了一个漏洞,即“无取消引用”#34;
我该如何解决这个问题?
答案 0 :(得分:2)
假设ddl
永远不能为空:
if (!String.IsNullOrEmpty(ddl.SelectedValue)
{
}
否则:
if (ddl != null && !String.IsNullOrEmpty(ddl.SelectedValue)
{
}
答案 1 :(得分:0)
在C#6中,您具有null取消引用运算符,也称为安全导航运算符,因此您可以执行...
if (!String.IsNullOrEmpty(ddl?.SelectedValue)
{
// ddl can be null and this will not throw.
}