I don’t use Linq much, but when I do I’m amazed how awesome and fun it is. Here is a simple way to remove null values (note values, your keys should never be null, ever and if they are something is wrong) from a dictionary.
Dictionary d1 = new Dictionary()
{
"key1" => "value1",
"key2" => null,
"key3" => "value3"
};
Dictionary d2 = (from kv in d1
where kv.Value != null
select kv).ToDictionary(kv => kv.Key, kv => kv.Value);
