right doing in order put stuff in database.
public void addmonsters() { monster newmonster = new monster(); newmonster.level = 1; .... newmonster.strength = 10; db.monsters.add(newmonster); db.savechanges(); newmonster.level = 3; ..... newmonster.strength = 197; db.monsters.add(newmonster); db.savechanges(); newmonster.level= 30; .... newmonster.strength = 275; db.monsters.add(newmonster); db.savechanges(); }
i have savechanges
every one.
but know there's addrange
function in database, didn't work.
how can add multiple entries @ once?
thank you.
the problem reusing same variable newmonster
. if create new object instance each monsters, able call db.savechanges()
@ end only.
you create list of monsters, use addrange()
.
var monsters = new list<monster>() { new monster { level = 1, strength = 10 }, new monster { level = 10, strength = 105 }, }; db.monsters.addrange(monsters); db.savechanges();
to clarify, in code snippet above entity framework tracking 1 instance of monster
--so have no way of using addrange or not having repeatedly call .savechanges(). literally taking same object, changing variables , doing .add , .savechanges.
creating list specified cleanest solution problem--though create collection of monster
, add them @ once, using .addrange expected.