मैंने पहली डैपर लिखा था। सैम के साथ कुछ चर्चा के बाद बहुत समय पहले संपर्क करें। मुझे एक्सटेंशन-पैकेज का ब्योरा नहीं पता है और वे एक ही सीआरयूडी-चीज को कम या ज्यादा करते हैं लेकिन कुछ परिदृश्यों में कंट्रीब-पैकेज कुछ हद तक तेज़ हो सकता है क्योंकि इसमें दोनों प्रश्नों और इंटरफ़ेस के लिए कैश में बनाया गया है एक आंतरिक "गंदे" ट्रैकिंग के साथ आधारित पीओसीओ। परीक्षण कोड से छीन लिया गया:
using (var connection = GetOpenConnection())
{
connection.Get<User>(3).IsNull();
var id = connection.Insert(new User {Name = "Adam", Age = 10});
//get a user with "isdirty" tracking
var user = connection.Get<IUser>(id);
user.Name.IsEqualTo("Adam");
connection.Update(user).IsEqualTo(false); //returns false if not updated, based on tracking
user.Name = "Bob";
connection.Update(user).IsEqualTo(true); //returns true if updated, based on tracking
user = connection.Get<IUser>(id);
user.Name.IsEqualTo("Bob");
//get a user with no tracking
var notrackedUser = connection.Get<User>(id);
notrackedUser.Name.IsEqualTo("Bob");
connection.Update(notrackedUser).IsEqualTo(true); //returns true, even though user was not changed
notrackedUser.Name = "Cecil";
connection.Update(notrackedUser).IsEqualTo(true);
connection.Get<User>(id).Name.IsEqualTo("Cecil");
connection.Query<User>("select * from Users").Count().IsEqualTo(1);
connection.Delete(user).IsEqualTo(true);
connection.Query<User>("select * from Users").Count().IsEqualTo(0);
connection.Update(notrackedUser).IsEqualTo(false); //returns false, user not found
योगदान में अच्छी लग रही भविष्य प्रणाली नहीं है जो एक्सटेंशन है। नोट डैपर पर एक अच्छा धागा है। Dapper.Rainbow VS Dapper.Contrib
स्रोत
2013-12-17 11:11:04
Nuget में 'Dapper.Contrib'? उसी परियोजना में 'Dapper.Contrib' और' Dapper.Rainbow' का उपयोग करना अच्छा अभ्यास है? – Kiquenet