Deconstructing a class in C#