sharepoint - PublishingRolloutImage not persisting on Update(); -


i have list, has 3 fields: title, publishingrollupimage , description.

i want upload image library sitecollectionimages , reference on list.

i'm able upload file folder sitecollectionimages, , it's url.

i'm able insert item in list "mylist", publishingrolloutimage won't persist after update() method. tried set constructor imagefieldvalue, this:

        new imagefieldvalue("<img src='test.jpg' />"); 

but didn't work.

here's code:

        using (var site = new spsite(spcontext.current.site.id))         using (var web = site.openweb())         {             var folder = web.getfolder("sitecollectionimages");             var file = folder.files.add(filename, file, true);             folder.update();              var list = web.lists["mylist"];             var item = list.items.add();             item["title"] = "myitemtitle";             item["publishingrollupimage"] = new imagefieldvalue { imageurl = file.url };             item["description"] = "mydescription";             item.update();         } 

what i'm doing wrong?

after lot of trial , error, found out doing 2 things wrong:

this:

item["publishingrollupimage"] = new imagefieldvalue { imageurl = file.url }; 

was supposed this:

var image = item["publishingrollupimage"] imagefieldvalue ?? new imagefieldvalue(); image.imageurl = string.format("/{0}", file.url); item["publishingrollupimage"] = image; 

and file.url needs start slash. if doesn't start slash, break after update(); method. that's reason string.format there.


Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -