Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

Our SharePoint solution has recently been upgraded to SharePoint 2010, and we are taking a look at how we package and deploy the site to see if there are better ways to do things.

We currently package all files needed for our site (dll's, images, svc files, xap files, js files, css files, masterpages, html files, aspx files) and deploy them to 14/template/features/OurFeature/

I've been doing a lot of reading about SharePoint Developer Tools in Microsoft Visual Studio 2010, and I would like to use this to package/deploy our solution. It seems Visual Studio allows for mapped folders to SharePoint's images and layouts directories, and also allows other mapped folders. I'm wondering if there are standard locations for any of the other file types that I have mentioned above, or is our current method of storing things in the template/features folder a good idea? We currently map things to this folder in IIS, so ~/images/ points to our site's images and so forth.

Can someone point me to best practices for SharePoint site file organization? Are there benefits to doing things one way versus another? Is there any reason that we should change our current deployment strategy?

share|improve this question
add comment

1 Answer

You should always deploy using Solution Packages (WSPs). If you have multiple servers it will help with deployment and retraction.

In terms of mapped folders I like to put things in purpose-built locations

i.e.

  • images/mysolution/img.jpg
  • controltemplates/mysolution/mycontrol.ascx

This allows you to set policies within IIS and have them apply to your deployed file types.

Just copying files into features/myfeature does work, but I wouldn't do it. Besides, creating a WSP is so much easier over the course of a development project.

I also wouldn't be deploying dlls into the features folder. It sounds like you're making this folder visible through IIS? Scary.

share|improve this answer
    
I wasn't completely clear above. We are currently using WSPs, and we put our dll's in the site's bin folder. –  Dana Jan 31 '11 at 13:09
    
Good to hear re: bin & WSPs. I like putting files in folders aligned with their purpose as it allows your system administrators to be very specific with regards to security. So (dlls >> BIN), (images >> IMAGES mapped folder), (CSS >> STYLES), (All other files>> Layouts/OurFeature). That's my preference, but you can put images & css files into Layouts/OurFeature. –  Neil Richards Jan 31 '11 at 18:20
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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