2

I have deployed a WSP site template that originally came from "Save Site as Template" (our site was customized from a team site - STS#0). Now, we're making changes to it in in Visual Studio (as it's source controlled). In our testing, we've come across some web part pages that need to be changed/edited. We're quite far along in our development (with custom features, etc.), that any changes need to be added into Visual Studio, instead of doing another "save site as template".

Editing Web Part pages is a pain - all of the XML and HTML is stashed inside "binaryserializedwebpart"s which are very difficult to edit.

Does anyone have a tool that deserializes the snippet and allows you to edit it? (I know it's Base64 encoding - I can at least decode it to see the text).

One solution to make changes (in the Elements.xml) is to save the latest site as template, import that WSP, and copy the snippet to the original solution/project. However, making large changes (i.e. moving around or removing web-parts on a page) is quite problematic - it seems you can't just take the elements.xml snippets (taken from the edited site and saved as WSP) for a given page and paste it into the original elements.xml - GUIDs change and what not.

A more sane approach would be most welcome.

1 Answer 1

2

Unfortunately this is just the way SharePoint 2010 saves web part properties into a site template - difficult to say it's a bug as such, but it sure isn't pretty. I'm not aware of anyone having a more sophisticated workaround like you describe.

Numerous people have asked the SharePoint Product Group to do something better in this area, we live in hope.

2
  • Thanks Chris, I do hope that the SharePoint Product Group will (soon) add capabilities to improve the tools for developing the presentation layer for solutions and features. I had figured that some 3rd party tools would have been released already to aid in this process - and I wonder if this way of developing solutions isn't that popular with most developers...
    – Dan Tshin
    Jan 24, 2011 at 6:30
  • Chris, don't think it's a bug, but seems to be by design. Webparts that have embedded XML, saving the site as WSP seems to serialize that webpart. Web parts would be stored in the manifest (elements.xml) in CDATA blocks, but for webparts that themselves have additional XML/XSL (in CDATA blocks), because CDATA blocks can't be nested, the whole webpart then is stored as binary serialized data. A post by Nancy Brown link got me thinking about it this way.
    – Dan Tshin
    Apr 20, 2012 at 22:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.