For my projects, I always use this structure.
- trunk
- config
- docs
- sql
- src
- thirdparty
- tags
- branches
- config - Used to store my application config templates. During the build process, I take these templates and replace token placeholders with actual values depending on what configuration I am making the build.
- docs - Any application documentation gets placed in here.
- sql - I break my sql scripts into two directories. One for the initial database setup for when you are starting fresh and another place for my update scripts which get ran based on the version number of the database.
- src - The application source files. In here I break source files based on application and tests.
- thirdparty - This is where I put my third party libraries that I reference inside of my application and not available in the GAC. I split these up based on lib and tools. The lib directory holds the libraries that need to be included with the actual application. The tools directory holds the libraries that my application references, but are only used for running unit tests and compiling the application.
My solution file gets placed right under the trunk directory along with my build files.