VS 2005: New (VS 2003 like) Project Option for ASP.NET
Scott describes a New Web Project Model Option Coming for VS 2005:
"... All files contained within the project are defined within a project file (as well as the assembly references and other project meta-data settings). Files under the webs file-system root that are not defined in the project file will not be logically considered part of the web project. You will also now be able to define classes and types anywhere in the project structure (there is no longer a need to define them under app_code) ..."
I'm not sure whether it is a good news since I'm slowly getting used to the core VS 2005 Web site model. Nevertheless the folder named "App_Code" in the solution tree still looks odd to me ... The reason for the introduction of the new (old) model is obvious:
"... One of the big reasons we are introducing this new project option is to help make upgrades from VS 2003 based web projects much easier. Because the compile-semantics between the VS 2003 and this new project model are identical (single assembly and project file based), developers should be able to upgrade their VS 2003 projects to this new project-type, do a clean compile, and have everything build without making code modifications or file-changes to their project (the file-layout and code structure stay exactly the same). ..."
Yeah, it is not that easy to migrate a site to ASP.NET 2.0 when it is a bit more complicated than demo or start-kit. I think that blogs.msdn.com which hosts Microsoft weblogs is still powered by ASP.NET 1.1, isn't it ? But the migration is possible. Both models will be supported and it is promised that switching between them is easy:
"One nice thing about the new project model is that it will also support easily moving individual pages back and forth between it and the built-in VS 2005 web site model."
I think it is not obvious here - either I can switch back and forth between entire project models or individual pages only, I would like to expect entire switching. Since I have already migrated (my site for example) to the core VS 2005 web site model but would like to have more explicit (VS 2003 like) control over the project. Ideally I would expect to be able to open the entire project using either model and be able to compile and work without any changes. What I don't want to do - is another migration. One issue to pay attention -- in VS 2005 namespace declaration is not used by default for a newly created web page (which allows multiple same classes names per project).
I'm not sure how do I feel about it. Something tells me that when VS 2005 core web site model was announced and released instead of VS 2003 model VS team should stick to it and defend it up to the end. This move looks like something not planned beforehand and the fact that they are going to maintain both workflows is not promising. Also ASP.NET developers should have to learn both models and be able to develop using each of them, since different companies will choose different development models. Or may be it's not a big deal ?
Saturday, December 10, 2005 4:07 AM