Servicestack ORMLite upadte child collection -
i can see can stuff in ormlite:
var client = new client { name = "customer 1", primaryaddress = new customeraddress { addressline1 = "1 commonwealth of australia street", country = "australia" }, orders = new[] { new order { lineitem = "line 1", qty = 1, cost = 1.99m }, new order { lineitem = "line 2", qty = 2, cost = 2.99m }, }.tolist(), }; db.save(customer, references:true);
but updating kid collections?
how done?
to expand on this.
i have useraccount class , image class internal useraccount:
public class useraccount { [autoincrement] public int id { ; set; } public useraccount() { images = new list<userimage>(); } public list<userimage> images { get; protected set; } public userimage image { get; set; } public class userimage { public userimage() { created = datetime.now; } public userimage(string name) { value = name; created = datetime.now; } public string value { get; set; } } }
doing this:
var fullimage = new useraccount.userimage(newimageurl); fullimage.isdefault = true; user.image = fullimage; db.update (fullimage);
doesn't work.
doing this:
var fullimage = new useraccount.userimage(newimageurl); fullimage.isdefault = true; user.images.add(fullimage); db.update (fullimage);
doesn't work...
also doing same having image seperate entity it's own id , setting reference on parent class doesn't work?
i think way:
var image = new userimage(newimageurl); image.isdefault = true; db.save (image); var images = user.images; images.add (image); db.update (new useraccount{id = user.id, image = image, images = images});
i hope wrong because ugly :/
[update]
i have looking much nicer:
db.updateonly (user, onlyfields: a=> new { a.image, a.images}, where: ua => ua.id == user.id);
servicestack ormlite-servicestack
No comments:
Post a Comment