【发布时间】:2016-01-28 21:38:43
【问题描述】:
我对 C# 比较陌生,所以请多多包涵!如果字典中没有任何内容,我更愿意编写的代码会抛出一个空引用,这是应该的。我不得不将它转换为字符串,因为字典返回一个对象:
string mainDirectorsInZim = (string)zimOrganisation.OrganizationFields["main_director"];
我必须编写的代码来解决这个问题?
if (zimOrganisation.OrganizationFields.ContainsKey("main_director"))
{
mainDirectorsInZim = (string)zimOrganisation.OrganizationFields["main_director"];
}
else
{
mainDirectorsInZim = null;
}
我没有多少这些要写,而且似乎效率低下。有没有更好的方法来做到这一点?
【问题讨论】:
-
第一个代码的哪一部分抛出
NullReferenceException?它只会在字典为空时抛出。你确定它不会抛出KeyNotFoundException? -
看看这对你有没有帮助:Cleaner way to do a null check in C#?
标签: c#