c# foreach dictionary deconstruct