Friday, March 25, 2005
Paul Wilson has released the latest version of his ORMapper.  Check the release notes for fixes and improvements.
Friday, March 25, 2005 1:40:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Thursday, March 24, 2005

My good friend Josh Evitt has started a new blog at www.TheGuitarBlog.com.  It's been my experience that there is a high correlation of people who are software developers (or are really "into" computers) and are also musicians.  Especially guitarists.

Crank it to 11, Josh!

Thursday, March 24, 2005 12:08:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [3]  | 
 Monday, March 07, 2005
Mike Gunderloy of Larkware "Daily Grind" fame has written a positive review of Paul Wilson's UIMapper.  If you don't already subscribe to the Daily Grind, you should.  Now.
Monday, March 07, 2005 10:40:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 28, 2005

Paul Wilson has released his UI Mapper.

A UI Mapper is a library and set of controls that allows your UI to be dynamically created at run-time, loaded from your business entity objects, as well as to persist the UI changes back to your entities. It also allows you to use your own DAL, Framework (like CSLA), or O/R Mapper (like NHibernate, LLBLGen Pro, WilsonORMapper) to transparently load and persist your business entity objects to a relational database.

The UI Mapper supports both Web and Windows applications, and ships with several UI Mapper-aware controls.  The UI Mapper allows you to create your own controls, or wrap 3rd-party controls.  I commend Paul for not only developing and releasing this product to the public, but also creating a flexible framework that allows you to plug in your own components and your own data access layer, including other O/R mappers.

http://weblogs.asp.net/pwilson/archive/2005/02/28/382090.aspx

http://www.uimapper.net/

Monday, February 28, 2005 10:53:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 21, 2005

Can't work with 'em...

Can't blue-screen without 'em.

Monday, February 21, 2005 7:25:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 14, 2005

Eric Wise has put together a overview of object oriented programming (OOP) concepts for VB.NET.  Please read if you're new to .NET or not sure you understand what OOP is.  Anything you can do to improve your OOP knowledge and skills will have a direct impact on your effectiveness and enjoyment of .NET (or any OOP language, for that matter).

If you prefer C#, use a VB.NET/C# syntax comparison to help you translate Eric's VB.NET code examples and list of declaration options.

Monday, February 14, 2005 11:04:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Saturday, February 12, 2005

Inspired by Joe Audette's presentation at the Nashville .NET Users Group meeting last night, I've been on a mission to learn more about MySQL.  I downloaded the database server, administrator, query browser and the .NET data provider "MySQL Connector/Net" (formally ByteFX, I believe).  After installing all the goodies, I fired up MySQL Administrator and created a new database ...er... schema, and added a couple of tables.

Setting up a "hello world" test was a breeze.  MySql.Data.MySqlClient includes a MySqlHelper class, which is equivalent to the SqlHelper class found in the Microsoft Application Blocks for Data (now in the Enterprise Library).  Within just a few lines of code, I had a DataGrid populated from my new database...uh...schema.

string cnnString = "Server=localhost;Port=3306;Database=mydb;Uid=myusr;Pwd=mypwd";
MySqlConnection cnx = new MySqlConnection(cnnString);
cnx.Open();

DataSet ds = MySqlHelper.ExecuteDataset(cnx, "SELECT * FROM favorite");
dgFavorite.DataSource = ds;
dgFavorite.DataBind();

But, I didn't stop there.  Oh, no.  My new mission was to see if I could get Paul Wilson's ORMapper to talk to MySQL.  It took some Googling and a couple of good resources, but I was eventually able to do it.

// Retrieve a single object using GetObject()
Favorite fav = (Favorite) DataManager.ObjectSpace.GetObject(typeof(Favorite), 1);
lblResults.Text = "Retrieved Favorite: " + fav.Text;

// Retrieve all objects using Paul Welter's RetrieveAll() static method
dgFavorite2.DataSource = Favorite.RetrieveAll();
dgFavorite2.DataBind();

Of course, there are a lot of details I'm leaving out.  I may use this experience as a starting point for a tutorial or two for my "Learn ASP.NET" section.

By the way, I'm using Paul Welter's latest CodeSmith templates for the ORMapper, which automatically sets up static methods on the generated entity classes such as Retrieve(), RetrieveAll(), RetrievePage(), RetrieveQuery(), Save() and Delete().  Very cool.

What a rush... this is why I became a developer.

Saturday, February 12, 2005 1:09:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [9]  | 
 Friday, February 11, 2005

Today's Dilbert just cracked me up.  That's me holding my Windows Mobile 2003 phone.  Wait... maybe this is too true to be funny...

Friday, February 11, 2005 8:48:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 

The most frequent question I'm asked about hosting at ChristianASP.NET is database support.  I love Microsoft SQL Server and have used it for years.  (Since version 4.2!)  Obviously, I can't afford what it would take to license SQL Server in a hosted environment.  I have a few users who are using Access or MSDE.  I know that MySQL and PostgreSQL may be viable solutions, but I've never used them.  I know absolutely nothing about setting them up, or hosting them so that they would be secure and properly maintained. 

Anyone have experience with either MySQL or PostgreSQL?  Any advice or resources you'd recommend?

Friday, February 11, 2005 8:43:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [4]  |