refectoring C#