我正在爲我的Windows C#表單應用程序使用Dapper。我注意到他們大多數的CRUD操作都將類名稱作爲參數。 例如兩個表如下:Dapper的參數化更新和插入?
"Employee" Table
Column Name | Data Type |
-------------------------
EmpName | string |
EmpNo | string |
--------------------------
Employee.cs
[Table("Employee")]
public class Employee
{
[Key]
public string EmpNo {get;set;}
public string EmpName {get;set;}
}
"User" Table
Column Name | Data Type |
-------------------------
UserName | string |
UserNo | string |
--------------------------
User.cs
[Table("User")]
public class User
{
[Key]
public string UserNo {get;set;}
public string UserName {get;set;}
}
eg. var users= connection.Query<User>("select * from User");
var employees = connnection.GetList<Employee>();
將執行相應的任務。但根據我所知,connection.Insert<User>(user); or connection.Update<Employee>(emp);
不存在。 請糾正我,如果我錯了,是否有任何工作,讓更新和插入與讓枯燥的人知道類的類型? 我深知Query()
和Execute()
,實際上我正在使用這些。無論如何可以使它像GetList(ClassName);
一樣簡單嗎?
你可能想看看標籤信息http://stackoverflow.com/tags/dapper/info有鏈接[執行插入和更新與小巧](http://stackoverflow.com/questions/5957774/執行插入和更新與小巧) –
是的,我知道查詢和執行功能,我正在尋找的是使插入和更新像GetList(ClassName)和Get(類)一樣簡單。 –
@RahulMakwana你將需要編寫自己的包裝來做到這一點。根據我的理解,寫Dapper的人是這樣做的,因爲我在下面回答說要讓事情公開化。很多時候,代碼只需要更新特定的列,因此傳遞一個對象會假定您想要更新所有列,這是更新的一個重要假設。就目前而言,它是相當精確的代碼。 –