Automagically generate C# database layers for stored procedures