Dapper.NET Zelfstudie
Aan de slag met Dapper.NET
Zoeken…
Opmerkingen
Wat is Dapper?
Dapper is een micro-ORM voor .Net dat uw IDbConnection
, het instellen, uitvoeren en lezen van resultaten vereenvoudigt.
Hoe krijg ik het?
- github: https://github.com/StackExchange/dapper-dot-net
- NuGet: https://www.nuget.org/packages/Dapper
Gemeenschappelijke taken
versies
Versie | Notes | Publicatiedatum |
---|---|---|
1.50.0 | core-clr / asp.net 5.0 gebouwd tegen RTM | 2016/06/29 |
1.42.0 | 2015/05/06 | |
1.40.0 | 2015/04/03 | |
1.30.0 | 2014/08/14 | |
1.20.0 | 2014/05/08 | |
1.10.0 | 2012-06-27 | |
1.0.0 | 2011-04-14 |
Installeer Dapper vanuit Nuget
Zoek in de Visual Studio GUI:
Hulpmiddelen> NuGet Pakketbeheer> Pakketten beheren voor oplossing ... (Visual Studio 2015)
Of voer deze opdracht uit in een Nuget Power Shell-instantie om de nieuwste stabiele versie te installeren
Install-Package Dapper
Of voor een specifieke versie
Install-Package Dapper -Version 1.42.0
Dapper gebruiken in C #
using System.Data;
using System.Linq;
using Dapper;
class Program
{
static void Main()
{
using (IDbConnection db = new SqlConnection("Server=myServer;Trusted_Connection=true"))
{
db.Open();
var result = db.Query<string>("SELECT 'Hello World'").Single();
Console.WriteLine(result);
}
}
}
Wikkelen van de verbinding in Using
blok zal de verbinding te verbreken
Dapper gebruiken in LINQPad
LINQPad is geweldig voor het testen van databasequery's en bevat NuGet-integratie . Als u Dapper in LINQPad wilt gebruiken, drukt u op F4 om de Query-eigenschappen te openen en selecteert u NuGet toevoegen . Zoek naar dapper dot net en selecteer Toevoegen aan zoekopdracht. U wilt ook op Naamruimten toevoegen klikken en Dapper markeren om de extensiemethoden in uw LINQPad-query op te nemen.
Zodra Dapper is ingeschakeld, kunt u de vervolgkeuzelijst Taal wijzigen in C # Program , queryresultaten toewijzen aan C # -klassen en de methode .Dump () gebruiken om de resultaten te inspecteren:
void Main()
{
using (IDbConnection db = new SqlConnection("Server=myServer;Trusted_Connection=true")){
db.Open();
var scalar = db.Query<string>("SELECT GETDATE()").SingleOrDefault();
scalar.Dump("This is a string scalar result:");
var results = db.Query<myobject>(@"
SELECT * FROM (
VALUES (1,'one'),
(2,'two'),
(3,'three')
) AS mytable(id,name)");
results.Dump("This is a table mapped to a class:");
}
}
// Define other methods and classes here
class myobject {
public int id { get; set; }
public string name { get; set; }
}
De resultaten bij het uitvoeren van het programma zouden er als volgt uitzien: