Click here to Skip to main content
16,016,789 members

Survey Results

Which .NET data-tier generator do you use?   [Edit]

Survey period: 24 Apr 2006 to 30 Apr 2006

Data tier generators can save a ton of time. Which, if any, do you use? (suggested by Ashley van Gerven)

OptionVotes% 
None (Hand-code for each project)42031.70
Visual Studio 2005 DataSet designer18113.66
LLBLGen13310.04
CodeSmith1259.43
GenWise Studio675.06
MyGeneration43833.06
Iron Speed Designer100.75
Other876.57
Respondents were allowed to choose more than one answer; totals may not add up to 100%

View optional text answers (136 answers)


 
GeneralRe: Rocking The Boat Pin
Billy McCafferty26-Apr-06 11:36
Billy McCafferty26-Apr-06 11:36 
GeneralRe: Rocking The Boat Pin
araujoao127-Apr-06 5:37
araujoao127-Apr-06 5:37 
GeneralRe: Rocking The Boat Pin
Xiangyang Liu 刘向阳26-Apr-06 3:09
Xiangyang Liu 刘向阳26-Apr-06 3:09 
GeneralRe: Rocking The Boat Pin
ReleaseTheHounds26-Apr-06 3:40
ReleaseTheHounds26-Apr-06 3:40 
GeneralRe: Rocking The Boat Pin
Marc Clifton26-Apr-06 3:51
mvaMarc Clifton26-Apr-06 3:51 
GeneralRe: Rocking The Boat Pin
Mike Griffin26-Apr-06 7:26
Mike Griffin26-Apr-06 7:26 
GeneralRe: Rocking The Boat Pin
Marc Clifton26-Apr-06 3:48
mvaMarc Clifton26-Apr-06 3:48 
GeneralRe: Rocking The Boat Pin
Mike Griffin26-Apr-06 4:30
Mike Griffin26-Apr-06 4:30 
Marc, let me throw this into the fire. EntitySpaces, a new architecture I've created with others through EntitySpaces LLC generates SQL on the fly, and it gives it back to you so you can see it if you so desire. You can also write an EntitySpaces project for Oracle and run the EXACT same code on Access, Oracle or MySQL without recompiling, it's merely a connection string change. However, it is all strongly typed, but very lightweight, and generateable. We use inheritance to avoid regeneration errors, your custom classes inherit from the generated classes, you never hand edit the base (generated) classes, you just override any methods or properties in your custom class. Thus, when you look at your custom code classes they are either empty (because the generated class does it all) or they only contain your real business logic which makes it very nice indeed.

The nice thing about this approach is there are never runtime errors. The code compiles 100% clean and we never use hard code fields names, "EmployeeID" rather we use Employees.Columns.EmployeeID. You can write a query like this, via intellisense, and it runs on any database:

public partial class EmployeesQuery: esEmployeesQuery
{
      public bool CustomLoad()
      {
            Select(EmployeeID, FirstName, LastName, TitleOfCourtesy)
            .Where
            (
                  Or(LastName.Like("%A%"), LastName.Like("%O%")),
                  this.BirthDate.Between("1/1/1940", "1/1/2006")
            )
            .OrderBy(LastName.Descending, FirstName.Ascending);
            return this.Load();
      }
}

It's amazing how productive we are with this approach, so easy a child could do it, and it's generated in seconds, and can be regenerated in seconds if/when the schema changes.

Employees entity = new Employees();
entity.AddNew();
entity.FirstName = this.txtFirstName.Text;
entity.LastName = this.txtLastName.Text;
entity.Save();

Look at that code above, spoon fed via intellisense, it functions with or without stored procs, you get to choose, and runs on any provider, strongly typed, serializable and so forth ...

Mike Griffin
EntitySpaces LLC
http://www.entityspaces.net



-- modified at 10:31 Wednesday 26th April, 2006
GeneralYeah right ;) Pin
Frans Bouma26-Apr-06 22:33
Frans Bouma26-Apr-06 22:33 
GeneralRe: Yeah right ;) Pin
Mike Griffin27-Apr-06 2:38
Mike Griffin27-Apr-06 2:38 
GeneralRe: Yeah right ;) Pin
Frans Bouma27-Apr-06 2:59
Frans Bouma27-Apr-06 2:59 
GeneralRe: Yeah right ;) Pin
Mike Griffin27-Apr-06 3:02
Mike Griffin27-Apr-06 3:02 
GeneralRe: Yeah right ;) Pin
Frans Bouma27-Apr-06 3:10
Frans Bouma27-Apr-06 3:10 
GeneralRe: Yeah right ;) Pin
Mike Griffin27-Apr-06 3:12
Mike Griffin27-Apr-06 3:12 
GeneralRe: Yeah right ;) Pin
Frans Bouma27-Apr-06 3:19
Frans Bouma27-Apr-06 3:19 
GeneralRe: Yeah right ;) Pin
Mike Griffin27-Apr-06 3:25
Mike Griffin27-Apr-06 3:25 
GeneralRe: Yeah right ;) Pin
Frans Bouma27-Apr-06 3:37
Frans Bouma27-Apr-06 3:37 
GeneralRe: Yeah right ;) Pin
Frans Bouma27-Apr-06 3:39
Frans Bouma27-Apr-06 3:39 
GeneralRe: Yeah right ;) Pin
Mike Griffin27-Apr-06 3:44
Mike Griffin27-Apr-06 3:44 
GeneralRe: Rocking The Boat Pin
David Stone26-Apr-06 11:03
sitebuilderDavid Stone26-Apr-06 11:03 
GeneralRe: Rocking The Boat Pin
Marc Clifton26-Apr-06 11:44
mvaMarc Clifton26-Apr-06 11:44 
GeneralRe: Rocking The Boat Pin
JustinGreenwood26-Apr-06 11:46
JustinGreenwood26-Apr-06 11:46 
GeneralRe: Rocking The Boat Pin
David Stone26-Apr-06 11:56
sitebuilderDavid Stone26-Apr-06 11:56 
GeneralMyGeneration dOOdads Pin
Sam Collett25-Apr-06 6:21
Sam Collett25-Apr-06 6:21 
GeneralRe: MyGeneration dOOdads Pin
randomfactor25-Apr-06 9:02
randomfactor25-Apr-06 9:02 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.