I'd simply have my 'Team class inherit from List<Employee> and define my own handler for the 'Add method for the List:
public class Team : List<employee>
{
public int MaxEmployees { get; private set; }
public virtual String Name { get; private set; }
[Display(Name = "Project Title")]
public String ProjectTitle { get; private set; }
public DateTime DateCreated { get; private set; }
public Team(string name, string title, int maxEmployees)
{
Name = name;
ProjectTitle = title;
DateCreated = DateTime.Now;
MaxEmployees = maxEmployees;
}
public new void Add(Employee employee)
{
if (this.Count == MaxEmployees)
{
throw new ArgumentOutOfRangeException("", "Maximum Number of Employees on Team reached");
}
base.Add(employee);
}
}</employee>