Phi*_*ter 0 c# resharper ternary-operator null-coalescing-operator c#-6.0
我有条件:
if (dr_dados["DAT_SAIDA"] != null)
{
txtDataSaida.Text = "";
}
else
{
txtDataSaida.Text = dr_dados["DAT_SAIDA"].ToString();
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Jetbrain的ReSharper,它告诉我可以转换成三元操作.
所以,它变成了这样:
txtDataSaida.Text = (dr_dados["DAT_SAIDA"] != null) ? dr_dados["DAT_SAIDA"].ToString() : "";
Run Code Online (Sandbox Code Playgroud)
但后来它告诉我,我可以转换为空合并操作,它给了我这个:
txtDataSaida.Text = dr_dados["DAT_SAIDA"]?.ToString() ?? "";
Run Code Online (Sandbox Code Playgroud)
我有点知道null合并操作的作用,但是有一些不同的东西,我以前没见过的东西,我想知道它是什么.
这个额外的审讯就在这里:
v
txtDataSaida.Text = dr_dados["DAT_SAIDA"]?.ToString() ?? "";
Run Code Online (Sandbox Code Playgroud)
它是什么意思/是什么意思?