На мой взгляд, это не нарушает принцип SRP. И, как упоминал Пако, это все еще класс POCO. POCO не означает, что объект должен содержать только данные.
Я бы, как вы упомянули, изменил бы с IList <> на IEnumerable <> в моих коллекциях и сделал бы сеттеры частными (для коллекций). Это не проблема для nhibernate. Использование этих методов «add», на мой взгляд, является предпочтительным способом обработки коллекций в вашей модели ( сообщение в блоге об этом ).