So I’ve been developing in ASP.NET 2.0 and SQL Server Express and I’m happy with them in general. Some of the changes are a little jarring, though. To the point where they’re starting to hinder my progress enough to waste time complaining about them:
Firstly, is the idea of web sites being a different type of project. I.E. There’s no .csproj file. I read about why they did this and promptly forgot because frankly, I don’t care. What I do care about is the fact that when I download code samples, there isn’t anything I can double-click to open it in VS 2005. Yes, I can open VS 2005 and select Open Web Site… You can also click File | Close to close most of your apps but when was the last time you did that? What if you were forced to?
*UPDATE* Thanks to www.hanselminutes.com for pointing me to this little number to fix this annoyance. Some great-looking additions, too. Like the ability to create a virtual directory from within VS2005 and publishing to an FTP server.
Secondly is the method of debugging. I like that you don’t have to create a website in IIS for every web project you’re working on. But here’s my problem with that: I don’t generally run web apps through VS 2005. My method of debugging is old school. I open the project in Visual Studio and I open the site in IE. I make changes in Visual Studio, recompile, refresh the page in IE, and repeat. Takes too long to start the formal debugging process in VS just because I have a typo in a property somewhere.
If I do need to debug with breakpoints, I usually have a benign starting page that loads quickly. I hit F5 until that page loads and I now have the benefit of having the debugger attached to my IE processes. I can now go back to my real IE instance and refresh the page to hit the breakpoints.
This isn’t possible without doing things the .NET 1.1 way and creating an IIS site for my apps in progress. I believe, but have not verified, that I could get around this by starting the app from VS 2005 once which will create the web server port I need for that session. I also believe this port will go away when I close Visual Studio. Again, a workaround that slows me down.
Related to this is my final beef. I’m constantly getting “cannot open user default database” errors. Not when I start the project from VS 2005 but almost always when I load the site up directly in IE. The error goes away if I disconnect the database in VS 2005 but that is NOT a workaround I’m willing to put up with. As far as I can tell, the same thing happens whether you work with the database in VS or in SQL Management Studio. For now, I’m able to things going by using a SQL login in my connection string. Again, not the ideal situation but at least I can go back to work.
If anyone has details on any of these issues, don’t be shy.