C# Abstraction