加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如果不为空,则添加到集合

发布时间:2020-12-15 03:45:15 所属栏目:百科 来源:网络整理
导读:我有一个非常大的对象与许多可空类型的变量.我也有一个字典,我想填写这个对象的非空变量. 代码看起来像这样 if (myObject.whatever != null){myDictionary.Add("...",myObject.whatever);}if (myObject.somethingElse != null){myDictionary.Add("...",myObj
我有一个非常大的对象与许多可空类型的变量.我也有一个字典,我想填写这个对象的非空变量.

代码看起来像这样

if (myObject.whatever != null)
{
myDictionary.Add("...",myObject.whatever);
}
if (myObject.somethingElse != null)
{
myDictionary.Add("...",myObject.somethingElse);

...

编辑(抱歉搞砸了代码)

当我们重复这个第十二次,我们得到一堆很长的代码.有没有一些较短的方式我可以写这个烂摊子?我知道条件运算符(又名?),但这只是作业.有没有像这样添加到收藏夹?

解决方法

您的字典的扩展方法如何?
public static void AddIfNotNull<T,U>(this Dictionary<T,U> dic,T key,U value) 
where U : class {
    if (value != null) { dic.Add(key,value); }
}

你可以这样做:

myDictionary.AddIfNotNull("...",myObject.whatever);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读