2011-06-05 61 views
32

我想在一個現存的MVC3項目中開始使用Dapper,雖然它看起來很容易使用,但我似乎無法找到關於如何設置它的任何教程。任何鏈接或建議將不勝感激。Dapper入門的好例子?

非常感謝。

+0

Dapper實際上通過擴展IDbConnection接口工作。你必須明確地創建連接,調用任何Dapper的擴展方法,然後在你通過時關閉連接。你可以再看看Marc Gravell的答案中的代碼。當您使用所有連接管理工具讀取代碼示例時,Dapper所做的工作可能會丟失。只需瀏覽所有內容並查看連接對象上調用的擴展方法的位置即可。 – 2011-08-27 10:48:25

回答

26

也就是說,部分原因是因爲有沒有設置 - 所有你需要的是一個數據庫(它不關心)和一些類(它不關心)。 (提示:當我們遇到LINQ到SQL的問題時,我們使用dapper作爲直接插入式替換),這些核心方法僅使用參數化SQL,並且故意接近LINQ-to-SQL的基於SQL的方法。

如果您需要幾個示例,the "tests" project包含核心API的示例。

如果您的意思是「如何添加短小精悍」 - 兩種選擇; a single file已添加到您的項目或nuget package。 nuget pacakge往往滯後一點,但並不多。

但最終,用法就是:

// get all open orders for this customer 
var orders = connection.Query<Order>(
    "select * from Orders where CustomerId = @custId and Status = 'Open'", 
    new { custId = customerId }).ToList(); 

在您Orders類有相匹配的數據庫(它是一個非常直接的映射)的名稱屬性。不需要屬性;不需要特殊工具。在我們的例子中,我們傾向於使用LINQ-to-SQL生成的類,或者爲某些列子集創建的特定類(或者幾個表之間的組合)。

+0

*「nuget pacakge往往滯後一點,但並不多。」*。我不明白。你的意思是安裝軟件包的時間不夠? – talles 2014-02-19 19:32:52

+1

@talles no,我的意思是它可以稍微落後於回購當前的代碼,而它穩定等等 – 2014-02-19 21:08:10