I have a large inserting job to perform, say 300000 Inserts.
If I do it the legacy way, I just write a SQL string with blocks of 100 Insert statements, and perform an executeCommand against the DB (each 100 records).
That lends to some 100 inserts per 3 seconds or so.
Now of course there are issue with single quotes and CrLf's within the inserted values. So rather than writing code to double the single quotes and so on, since I'm lazy I have a go with Linq InsertOnSubmit and one context.SublitChanges each other 100 rows.
And that take some 20x more times than the legacy way!!!
Why?