Giter Club home page Giter Club logo

fluentado's Introduction

Fluent Ado.Net is a lightweight wrapper around Ado.Net, designed to be used in a fluent manner, encourage code reused, and make mapping to domain classes easier.

Fluent Ado.Net was originally designed for the compact framework, but can be used in any .net project.

An example of how Fluent Ado.Net code would look like in your project would be like this:

--------------------------------------
public Customer ByID(Guid id)
{
      const string sql = "SELECT ID, FirstName, LastName, BirthDay, Height, Weight FROM Customer WHERE ID = @id";
      return new FluentCommand<Customer>(sql)
          .AddGuid("id", id)
          .SetMap(reader => new Customer
                            {
                                ID = reader.GetGuid("ID"),
                                FirstName = reader.GetString("FirstName"),
                                LastName = reader.GetString("LastName"),
                                Birthday = reader.GetDateTime("Birthday"),
                                Height = reader.GetIntNullable("Height"),
                                Weight = reader.GetIntNullable("Weight")
                            }
          )
          .AsSingle();
  }

--------------------------------------
  public List<Customer> List()
  {
      const string sql = "SELECT ID, FirstName, LastName, BirthDay, Height, Weight FROM Customer";
      return new FluentCommand<Customer>(sql)
          .SetMap(reader => new Customer
                            {
                                ID = reader.GetGuid("ID"),
                                FirstName = reader.GetString("FirstName"),
                                LastName = reader.GetString("LastName"),
                                Birthday = reader.GetDateTime("Birthday"),
                                Height = reader.GetIntNullable("Height"),
                                Weight = reader.GetIntNullable("Weight")
                            }
          )
          .AsList();

  }
--------------------------------------

That code executes the SQL statement, sets the id parameter, and maps the results to a Customer object, then returns the first one or null. That was technically one line of code. But more importantly, it was not much code. A lot less than what you would typically write for your usual Ado.Net.

So have a look around, leave us a note/suggestion, and take what you want.

Other Pages
*Out params
*Implementing Generic Provider

fluentado's People

Contributors

cwbrandsma avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.