1對1
publicclass
employees4list
public
string name
public
string mobile
public department4employees department
}public
class
role4employees
public
string name
}ienumerable
getemployees()
);
return
list;
}}
1對n但是如果職工類中加入這樣乙個屬性呢 ? public listrole
publicclass
employees4list
public
string name
public
string mobile
public listrole
public department4employees department
}public
class
role4employees
public
string name
}public
class
department4employees
public
string name
}
之前看到過這樣乙個方式,但是它是不能像我們想象的那樣工作,這裡如果乙個eemploye有多個角色,那就和原始的sql語句一樣,他會產生重複的記錄
ienumerablegetemployees());
return
list;
}}
ienumerablegetemployees());typeof(role4employees), new list );
typeof(department4employees), "id"
);
return
list;
}}
通過addidentifier和addidentifier來識別外來鍵是1對1還是1對n,需要注意的是這裡需要對字段取別名,怎麼取呢?
新的名稱以在c#類中欄位名稱+下劃線+導航類的欄位名稱
比如說employees4list中有乙個屬性role要做1對n查詢,通過addidentifiers方法指明需要轉換的型別名稱和主鍵名稱,其次在sql語句中通過
role_id和role_name來取別名,下劃線前面的role來自employees4list的 role屬性,下劃線後面的 id 和 name來自 role4employees
Dapper學習筆記
setdbtype 只需在所有資料庫操作之前執行一次即可 using system using system.data using mysql.data.mysqlclient using ms.base namespace ms.dbutil static mysqlhelper public s...
Dapper學習筆記
2.insert操作 通常來說,有兩種insert操作 1 單條insert操作 update delete同理 這是乙個簡單的引數化insert,而且還可以塞入匿名型別,對吧,跟原始的sqlparameter相比,是不是簡單的多?static void main string args 2 ins...
Dapper的基本使用
個人覺得他非常好用,現在已經取代了原來的sqlhelper。優點 輕量級,單檔案。支援多資料庫。先給出實體類的關係 書和書評是1 n的關係。沿用entity framework的實體類,virtual表示延遲載入,此處忽略 書public class book public int id publi...