Вам нужно переместить эту строку внутрь foreach
.
Entity.BCPToolkitWorkplace bCP = new Entity.BCPToolkitWorkplace();
Причина, по которой это происходит, заключается в том, что Entity.BCPToolkitWorkplace
, очевидно, определяется как класс (ссылочный тип), и вы определили только один экземпляр этого класса наверху, так что вы технически добавляли один и тот же точный экземпляр в список снова и снова.
Посмотрите ответы здесь , чтобы узнать больше о том, как работают ссылочные типы.