Included rationale for C#-specific DDD approach. For performance reason