Main Points

Our contact form development was our first time writing C# code. However, the real programming involved in converting it from VB.NET to C# was quite minimal. That was our first attempt, and a bit clunky in some respects, since most of what was required was manipulating objects in the .NET class libraries which is almost identical. However, it did give us a taste of C# syntax and get us into writing our first .aspx.cs files. Now we're trying to do more than get the job done, but build ASP.NET objects and applications with best practices and put together some code that may (or may not) work as a library for the App_Code folder.

Beginning C#

Here are our first forays into writing .aspx files in C#. The emphasis obviously is on developing ASP.NET best practices, and creating some classes that will serve as tools to make bigger things.

  • 1. Shared Sample C# Class - This is an important step in developing best practices. I have a bunch of pages using the Default.aspx.cs code behind. Not exactly elegant. Now that I'm deploying master pages I want to get into shared classes.

    [chroniclemaster1, 2008/08/04]

  • 2. Link Factory - This is our first major class. I want to run SEO-optimized links off a database to make them more maintainable. But first that means creating a Link Factory to build links from from the relevant pieces of the link which will be stored on the database; there's no point storing them in the database if I can't get them back out again.

    [chroniclemaster1, 2009/10/10]

  • 3. Fine-Grained XHTML Rendering - In order to perform large scale XHTML output, we need to explore what .NET is capable of doing.

    [chroniclemaster1, 2009/12/10]

  • 4. Custom Data Adapter - Not a .NET DataAdapter class, this is a custom class that implements the adapter pattern between the database and the UI layer which have very different formatting needs.

    [chroniclemaster1, 2009/12/31]

    • 4 - 1. Adapting ADO.NET Data - Our previous attempts ran into technological limitations (SQL first, then ADO.NET), so we'll try a different approach, writing to a DataTable cell by cell.

      [chroniclemaster1, 2009/12/31]

  • 5. Interfaces and Namespaces - A page for testing the syntax of fully implemented namespaces and using interfaces. The alternative, inheritance, has a number of drawbacks and in many cases using interfaces is a much better choice.

    [chroniclemaster1, 2010/01/06]

    • 5 - 1. Object Composition and Enums - Now that we've restored some faith in C#'s handling of interfaces, here's more intensive treatment of object composition, including enumerations.

      [chroniclemaster1, 2010/01/07]

  • 6. Security Measures - Building .NET security measures to facilitate a login system.

    [chroniclemaster1, 2010/01/23]

  • 7. Custom Website Analytics - There are no public domain web stats packages available so once again, we're looking at building are own.

    [chroniclemaster1, 2010/01/30]

  • 8. DateTimes - DateTimes have proven to be substantially more "interesting" than most data types. Time to do a little testing.

    [chroniclemaster1, 2010/02/22]

  • 9. Generic Collections - ADO.NET is an excellent tool, but it's time to explore other ways of storing and transporting data in my programs.

    [chroniclemaster1, 2010/05/05]

  • 10. Error Management - I've been actually getting some decent information on how to really manage error handling, maybe it's time to see if we can make it sing.

    [chroniclemaster1, 2010/06/15]

Outside Projects

Girl Scout Site Sales Application

I have a lot of programming to do and new components to build. I also volunteer periodically for the Girl Scouts here in San Diego. In 2008, I was asked to put this application together, and ran into problems with my dynamic version. With the clock ticking I was forced to implement a static page which required 2 hours of updating every night. So planning ahead, I'm building this project to provide me with components for other applications, as well as get a maintenance monkey off my back. Check out our Girl Scout Site Sales Index for more information.

[chroniclemaster1, 2009/11/30]

Perrill Translation Tool

This is a much more aggressive project that will certainly stretch out for awhile and possibly absorb other technologies into the final solution as well. The idea is to provide a tool that will help us build and display complete Perrill translations of foreign language texts. This could be a larger project but we'll need to adjust our goals upwards later and get something usable on a more immediate timeline.

[chroniclemaster1, 2008/08/07]

EC Beta Testing Suite

We need a number of testing administration tools for the website, and they're not just going to build themselves. We need this broad testing suite for Earth Chronicle to perform manual as well as automated testing which can save us some work.

[chroniclemaster1, 2010/03/14]