Dapper的基本使用

2021-07-09 10:16:39 字數 2023 閱讀 2358

個人覺得他非常好用,現在已經取代了原來的sqlhelper。優點:

輕量級,單檔案。

支援多資料庫。

先給出實體類的關係:

書和書評是1---n的關係。(沿用entity framework的實體類,virtual表示延遲載入,此處忽略)

一、實體類

idbconnection conn = new

sqlconnection(connstring);

insert

book book = new

book();

book.name="

c#本質論";

string

query = "

insert into book(name)values(@name)";

//對物件進行操作

conn.execute(query, book);

//直接賦值操作

conn.execute(query, new

);

update

string query = "

update book set name=@name where id =@id";

conn.execute(query, book);

delete

string query = "

delete

from book where id = @id";

conn.execute(query, book);

conn.execute(query,

new );

query

string query = "

select * from book";

//無引數查詢,返回列表,帶引數查詢和之前的引數賦值法相同。

conn.query

(query).tolist(); //

返回單條資訊

string query = "

select * from book where id = @id";

book = conn.query(query, new ).singleordefault();

資料庫表對應關係操作

//

查詢圖書時,同時查詢對應的書評,並存在list中。實現1--n的查詢操作

string

query = "

select * from book b left join bookreview br on br.bookid = b.id where b.id = @id";

book lookup = null;//

query

varb = conn.query(query,

(book, bookreview) =>,

new ).distinct().singleordefault();

return

b;

//

1--1操作

bookreview br;

string

query = "

select * from bookreview where id = @id";

using

(conn)

, new

).singleordefault();

return

br;}

事務操作

using

(conn)

, transaction, null

, null

);    conn.execute(query,

new , transaction, null

, null

);    

//提交事務

transaction.commit();

}  catch

(exception ex)

}

Dapper的基本使用

個人覺得他非常好用,現在已經取代了原來的sqlhelper。優點 輕量級,單檔案。支援多資料庫。先給出實體類的關係 書和書評是1 n的關係。沿用entity framework的實體類,virtual表示延遲載入,此處忽略 書public class book public int id publi...

Dapper的基本使用

個人覺得他非常好用,現在已經取代了原來的sqlhelper。優點 輕量級,單檔案。支援多資料庫。先給出實體類的關係 書和書評是1 n的關係。沿用entity framework的實體類,virtual表示延遲載入,此處忽略 書 public class book public int id publ...

Dapper的基本使用

個人覺得他非常好用,現在已經取代了原來的sqlhelper。優點 輕量級,單檔案。支援多資料庫。先給出實體類的關係 書和書評是1 n的關係。沿用entity framework的實體類,virtual表示延遲載入,此處忽略 書 public class book public int id publ...