A c# extensions solution