I’ve done a little pre-contract research lately, looking into what it would take for a local non-profit to get some internal applications onto its intranet. Some work has already been done in ASP with an Access backend. This being my first foray into ASP.NET, I played around with it for a day and a half or so and came up with these software infrastructure upgrade recommendations. (Those who have more experience with ASP.NET, I would be honored if you would point out anything I’ve missed!)
.NET Framework Version 2.0+
My main recommendation was that the web server be upgraded from .NET Framework 1.1 to version 2.0 or higher. My rationale follows.
Things this upgrade will give us now:
- Data Controls: Data controls such as the GridView and that are new in .NET Framework 2.0 will help us manipulate items from the database without so much custom coding
- Ability to Use Notepad For Everything: It’s designed to work outside of Visual Studio (see A comparison between ASP.NET 1.x and ASP.NET 2.0). In Framework 1.1 there are some things (notably code-behind) you can’t do without using Visual Studio or Visual Web Developer.
Things this upgrade will give in the future:
- Master Pages: This is a new feature that “allow[s] you to create a consistent layout for all the pages in a site”. This could be helpful to us in the longer term as we implement the second and third internal applications, so we don’t have to duplicate work on standard headers and footers for the pages.
- Security Controls: The .NET Framework 2.0 adds these security controls which could come in handy for us when we want to protect create/delete/edit functionality with username and password:
- Login control
- LoginStatus control
- LoginName control
- “LoginView control, to provide different views depending on login status
- A CreateUser wizard, to allow creation of user accounts
- A PasswordRecovery control, to provide the ‘I forgot my password’ functionality” (Source: A comparison between ASP.NET 1.x and ASP.NET 2.0)
Note: The reason I think .NET Framework 2.0 or higher should be fine are from looking over the Version Compatibility document (and the other What’s New in the .NET Framework Version X pages), which only lists breaking changes for version 2.0; so .NET Framework Version 3.5 should be fine for us too.
Windows XP or Later on a Workstation PC
Microsoft Visual Web Developer Express (free IDE for creating pages) requires Windows XP or later (just on a workstation, not on the web server) There are several benefits the IDE would bring, even if only temporarily as we’re learning ASP.NET (scan this Introduction to Visual Web Developer 2005 Express Edition for a quick overview).
- Since version 3.0, the DotNetNuke content management system (currently at version 5.1.1) does not support an MS-Access backend (sources: these posts on the ASP.NET forum. The benefit of the DNN software is that it could simplify the creation and management of our (eventual) multiple websites, providing central administrative control. This could prove to be be a more time- and cost-effective approach than rolling our own login functionality — or we may find we’re fine on our own.
- Windows 2000 Server comes with IIS version 5.0 (Source: the ASP.NET and IIS Configuration guide on MSDN)