protected MemberStatusChange(Member member, MemberStatus validStatus) { if (member.Status != validStatus) throw new ArgumentException(String.Format("Expected {0} state, got: {1}", validStatus, member)); _member = member; }