My love affair with DotNet continues

In my ever-continuing quest for knowledge, I have been toying with an idea in my head about rewriting GenX.NET (my flagship ADO.NET Exporter component) to make better use of the OOP techniques that .NET has to offer. This would be the third major rewrite of the component. The first time I told Brady Gaster about it, he said "Why not use an Interface?" For Brady, that kind of thing is a no brainer. He used to program Java for Wells Fargo, and now he's probably one of the greatest C# coders I've ever seen. The way he cranks the stuff out just boggles the mind.

At any rate, since my laptop is currently unavailable, for reasons I'd like to but probably shouldn't discuss, I figured I'd take the time to look up how the IDataReader interface works. The ___DataReaders are the ones that give me the most headaches, because if I want to get support for other ADO.NET Data Providers, I have to talk to the company that made it, hammer out an agreement... blah blah blah..... it gets REALLY old. Now, this is not to say that I don't like working with companies like Proposion to help push components and so forth. Nor does it by any means suggest that I will not continue to work co-packaging deals in the future, because I believe that these types of deals are, quite possibly, the best kind of marketing you can do. What it means is, I don't have to add a whole new class each time I want to support a new ADO.NET Provider.

So, I took some time and rewrote the whole thing. It was quite a lot of fun actually, cause I've learned a lot in the past few months since the last time I really worked with it. Cause I'm a nice guy, I still keep a lot of the old classes available for backwards compatibility, but I use the Obsolete attribute (thanks ScottW) to warn the developer that the method should no longer be used. Here is the proper usage:

(message to display to the user, boolean value telling the compiler whether or not to throw a build error or just give a warning)> _
Public Function MyFunction() As MyType

In my case, I don't want to throw an error, so I set parameter #2 equal to false.

And so, GenX.NET takes back the honor of being the best code that I've written so far, with my new Content Management System and my .NET Store coming in 2nd and 3rd respectively. You'll be seeing more about those in the near future. I still have a lot of things that I want to do to it, but I am now not ashamed to sell the heck out of it, and after I give it a spit polish and wrap everything up, I'll have it available for sale probably sometime early next month.

In other news, Rob Howard (still haven't seen a blog entry yet ) has released the first alpha build of ASP.NET Forums 1.5. NOTE: This is an EXTREMELY alpha build. Rob says there are so many bugs he doesn't even know where to start. The good news for you guys is, he's made a killer Installation Wizard that will actually create the virtual directory in IIS, and create the database on your local OR remote server, 2 things that I could not accomplish with the Forums Configurator. My next project will be to take the original FC code, revise it with the new things I've learned since then, and add Rob's code into the mix, and make it available as Forums Configurator 1.1. I have had a bunch of people clammoring for me to resurrect my first piece of freebie code, so I will be doing so ASAP.

2 Comments

Comments have been disabled for this content.