Tag Design Patterns in C# and .NET