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

前端之家收集整理的这篇文章主要介绍了c# – 如果不为空,则添加到集合前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个非常大的对象与许多可空类型的变量.我也有一个字典,我想填写这个对象的非空变量.

代码看起来像这样

  1. if (myObject.whatever != null)
  2. {
  3. myDictionary.Add("...",myObject.whatever);
  4. }
  5. if (myObject.somethingElse != null)
  6. {
  7. myDictionary.Add("...",myObject.somethingElse);
  8.  
  9. ...

编辑(抱歉搞砸了代码)

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

解决方法

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

你可以这样做:

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

猜你在找的C#相关文章