What are the best practices and strategy for designing and developing a website?
The key parts I want considered are:
- DLL deployment
- IIS publishing
- project versioning
Please answer these questions with recommended steps you take for your own web sites.
A sample walk-trough** (Please correct it with yours.)
- You make a web Application
- You make an IIS version of it
- Copy the same to the IIS Web Folder
- Copy the exact "Web Application" DLL into the IIS version folder ( or Will you build the wesite DLL here with csc or choose another method )
Add each project separately to the repository
Will anyway having both cause any conflicts (web application and website)?
- Do you make separated projects?
- How do you ensure that build of website assembly is always updated?
- How will you go for versioning of these and sync them?
- Moving the website DLL from the web application couldn't be a good idea How do you deal with that?
The most important part of this question for me is the number of projects/solutions you make for a website project.
I guess that probably they are 1 or 2 solutions, and as a professional developer, you will make them subversioned.
Do you change the namespaces, or assemblies? Will each of them have separated core assemblies? Will you share? If you share, how will you deal with that?
I think conflicts will occur.
Do you use a project as a container of the other one? How will subversioning be?
What I use
VisualSVN is my subversioning choice.
I had 2 projects similar to the formula above; I made a web project with pages, and after that I made a clone of it in the IIS. I fixed some addresses and paths issues and copied also the DLL inside the IIS-Version of the site, but I really do not know this way as a completely practical method because of the conflicts I mentioned.