Tutorial by Examples



using StackExchange.Redis; // ... // connect to the server ConnectionMultiplexer connection = ConnectionMultiplexer.Connect("localhost"); // select a database (by default, DB = 0) IDatabase db = connection.GetDatabase(); // run a command, in this case a GET RedisValue myVal ...
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 Inst...
Voor typen die bekend zijn tijdens het compileren, gebruikt u een generieke parameter met Query<T> . public class Dog { public int? Age { get; set; } public Guid Id { get; set; } public string Name { get; set; } public float? Weight { get; set; } public int Ignored...
U kunt ook dynamisch zoeken als u het generieke type weglaat. IDBConnection db = /* ... */; IEnumerable<dynamic> result = db.Query("SELECT 1 as A, 2 as B"); var first = result.First(); int a = (int)first.A; // 1 int b = (int)first.B; // 2
class ToyProfiler : IProfiler { public ConcurrentDictionary<Thread, object> Contexts = new ConcurrentDictionary<Thread, object>(); public object GetContext() { object ctx; if(!Contexts.TryGetValue(Thread.CurrentThread, out ctx)) ctx = null; ...
ConnectionMultiplexer conn = /* initialization */; var profiler = new ToyProfiler(); conn.RegisterProfiler(profiler); var threads = new List<Thread>(); var perThreadTimings = new ConcurrentDictionary<Thread, List<IProfiledCommand>>(); for (var i = 0; i < 16; i++) {...
IDBConnection db = /* ... */ var id = /* ... */ db.Execute(@"update dbo.Dogs set Name = 'Beowoof' where Id = @id", new { id });
Eenvoudig gebruik Dapper ondersteunt volledig opgeslagen procedures: var user = conn.Query<User>("spGetUser", new { Id = 1 }, commandType: CommandType.StoredProcedure) .SingleOrDefault(); Input-, Output- en Return-parameters Als je iets...
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>(&quo...
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 Naamrui...
public class IHtmlStringTypeHandler : SqlMapper.TypeHandler<IHtmlString> { public override void SetValue( IDbDataParameter parameter, IHtmlString value) { parameter.DbType = DbType.String; parameter.Value = value?.ToHtmlString(); } pu...
Om meerdere rasters in één query op te halen, wordt de QueryMultiple methode gebruikt. Hiermee kunt u elk raster achtereenvolgens ophalen via opeenvolgende oproepen tegen de geretourneerde GridReader . var sql = @"select * from Customers where CustomerId = @id select * from Orders...
Dapper maakt het gemakkelijk om best practices te volgen via volledig geparametriseerde SQL. Parameters zijn belangrijk, dus dapper maakt het gemakkelijk om het goed te krijgen. U @foo gewoon uw parameters op de normale manier uit voor uw RDBMS (meestal @foo ?foo of :foo ) en geeft dapper een obje...
Soms kan het gemak van een parameter (in termen van onderhoud en expressiviteit) opwegen tegen de kosten van de prestaties om deze als parameter te behandelen. Bijvoorbeeld wanneer het paginaformaat wordt vastgelegd door een configuratie-instelling. Of een statuswaarde wordt gekoppeld aan een enum ...
Een veel voorkomend scenario in databasequery's is IN (...) waarbij de lijst hier tijdens runtime wordt gegenereerd. De meeste RDBMS missen hiervoor een goede metafoor - en hiervoor is geen universele cross-RDBMS- oplossing. In plaats daarvan biedt dapper wat zachte automatische opdrachtuitbrei...
Soms wilt u hetzelfde meerdere keren doen. Dapper ondersteunt dit op de Execute methode als de buitenste parameter (meestal een enkel anoniem type of een instantie van een domeinmodel) in feite wordt geleverd als een IEnumerable reeks. Bijvoorbeeld: Order[] orders = ... // update the totals conne...
Alle waarden in Redis worden uiteindelijk opgeslagen als een RedisValue type: //"myvalue" here is implicitly converted to a RedisValue type //The RedisValue type is rarely seen in practice. db.StringSet("key", "aValue");
db.StringSet("key", 11021); int i = (int)db.StringGet("key"); Of met StackExchange.Redis.Extensions : db.Add("key", 11021); int i = db.Get<int>("key");
Het is niet altijd mogelijk om alle parameters netjes in één object / call samen te voegen. Om te helpen bij meer gecompliceerde scenario's, staat dapper toe dat de param parameter een IDynamicParameters instantie is. Als u dit doet, wordt uw aangepaste AddParameters methode op het juiste momen...
In ADO.NET is correct omgaan met null een constante bron van verwarring. Het belangrijkste punt in dapper is dat u dit niet hoeft te doen ; het behandelt het allemaal intern. parameterwaarden die null zijn, worden correct verzonden als DBNull.Value gelezen waarden die null zijn, worden gepresente...

Page 1 of 1336