Ho avuto lo stesso problema e si è scoperto che il problema era dovuto all'override di Equals sulla classe mappata. Il mio metodo Equals stava solo confrontando il campo della chiave primaria che era un campo dell'identità. Ovviamente quando gli oggetti sono nuovi, tutte le identità sono 0. Quindi, quando è stato chiamato InsertAllOnSubmit, ha pensato che tutti i nuovi oggetti fossero gli stessi e sostanzialmente ignorato tutti tranne il primo.