C# 3.0 では extension method で同じようなことになってしまうわけだが