Question

I am delighted by this:

// Insert a record with peta poco

var a = new Article();
a.title="My new article";
a.content="PetaPoco was here";
a.date_created=DateTime.UtcNow;
db.Insert(a);

I am distracted by this:

// Insert a record with dapper

var a = new Article();
a.title="My new article";
a.content="PetaPoco was here";
a.date_created=DateTime.UtcNow;
string articleQuery= "INSERT INTO Article VALUES (@Title, @Content, @Date)";        
connection.Execute(articleQuery, new { Title = a.Title, Content = a.Content, Date = a.Date });

I am new to dapper and peta poco. It might be that there is more in dapper that I have not found but I really do not like the way I have to do an insert. Peta poco seems to do it very ormish.

Can dapper do this somehow too?

Was it helpful?

Solution 2

Check out dapper extensions for 'magic' CRUD operations with Dapper:

using (SqlConnection cn = new SqlConnection(_connectionString))
{
    cn.Open();
    Person person = new Person { FirstName = "Foo", LastName = "Bar" };
    int id = cn.Insert(person);
    cn.Close();
}

Also see this thread for more...

OTHER TIPS

If you like the PetaPoco style the better, just go for it. Although Dapper is more famous, PetaPoco has the same performance, has the same concepts but it's a bit more flexible (IMO)

Developers use Drapper because of its performance. For many websites PetaPoco is good enough but if you want to extract all the server 'juice' use Drapper. In fact it is the ORM used by Stackoverflow. You can see all ORM performance comparison here

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top