Tag: dapper

用Dapper获取UTC时间作为UTC

我正在使用Dapper将我的实体映射到SQL Server CE。 如果我用Kind=Utc保存DateTime ,当我读到它时,我得到了Kind=Unspecified的DateTime ,这会导致所有types的问题。 例: var f = new Foo { Id = 42, ModificationDate = DateTime.UtcNow }; Console.WriteLine("{0} ({1})", f.ModificationDate, f.ModificationDate.Kind); connection.Execute("insert into Foo(Id, ModificationDate) values(@Id, @ModificationDate)", f); var f2 = connection.Query<Foo>("select * from Foo where Id = @Id", f).Single(); Console.WriteLine("{0} ({1})", f2.ModificationDate, f2.ModificationDate.Kind); 这段代码给出了以下输出: 20/09/2012 10:04:16 (Utc) 20/09/2012 10:04:16 (Unspecified) 我知道我应该使用DateTimeOffset […]

如何使用Dapper.NET将C#列表插入数据库

使用小巧 ,我怎样才能插入一个C# List到数据库。 以前没有精巧的我用下面的代码插入到数据库的列表值 。 try { connection.Open(); for (int i = 0; i < processList.Count; i++) { string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@Id, @st_Time, @ed_Time, @td_Time)"; command = new SqlCommand(processQuery, connection); command.Parameters.Add("Id", SqlDbType.Int).Value = processList[i].ID; command.Parameters.Add("st_Time", SqlDbType.DateTime).Value = processList[i].ST_TIME; command.Parameters.Add("ed_Time", SqlDbType.DateTime).Value = processList[i].ED_TIME; command.Parameters.Add("td_Time", SqlDbType.DateTime2).Value = processList[i].TD_TIME; dataReader.Close(); dataReader = command.ExecuteReader(); } […]

如何在.NET中处理与Dapper的数据库连接?

我一直在玩Dapper,但是我不确定处理数据库连接的最佳方法。 大多数示例显示了在示例类中甚至在每个方法中创build的连接对象。 但是我觉得在每个clss中引用连接string都是错误的,即使它是从we​​b.config中提取的。 我的经验是使用DbDataContext或DbContext与Linq到SQL或entity framework,所以这对我来说是新的。 在使用Dapper作为我的数据访问策略时,如何构build我的Web应用程序?

最新的Dapper VS Entity Framework 6的性能考虑

Dapper之间有一些性能比较(似乎是最快,最受欢迎的“微型ORM工具”)。 现在是2014年9月,我们有Entity Framework 6(不是5或者4),而且Dapper还在。 我们将开始开发一个庞大的数据库n层应用程序(数据库有700个表)。 还有一些需要运行的查询是相当时间敏感的。 有没有人有任何关于EF 6.1.x的性能更新? 这涉及在DbContext中进行的一般查询。 我想我不能用Dapper使用格式良好的LINQ查询。 你有这方面的经验吗? 是否值得失去LINQ的额外速度? 小巧玲珑还在积极,不断发展吗? GitHub告诉我是的,但是与Subsonic一样,它可以相当快地改变。 把Dapper和EF混合起来是可行的还是可行的? 当我们需要速度时,小巧玲珑,否则EF。 谢谢!

如何使用Dapper Dot Net从数据库结果映射到Dictionary对象?

如果我有一个简单的查询,如: string sql = "SELECT UniqueString, ID FROM Table"; 我想将它映射到一个字典对象,如: Dictionary<string, int> myDictionary = new Dictionary<string, int>(); 我将如何与Dapper做到这一点? 我假设它是这样的: myDictionary = conn.Query<string, int>(sql, new { }).ToDictionary(); 但无法弄清楚正确的语法。

使用Dapper.NET一次往返多个SQL语句

在ADO.NET中有一个很好的function,允许您在一个往返中将多个SQL语句发送到数据库,并接收所有语句的结果: var command = new SqlCommand("SELECT count(*) FROM TableA; SELECT count(*) FROM TableB;", connection); using(var reader = command.ExecuteReader()) { reader.Read(); resultA = reader.GetInt32(0); reader.NextResult(); reader.Read(); resultB = reader.GetInt32(0); } Dapper.NET中是否有类似的function?

在Dapper.NET中调整CommandTimeout?

我试图通过存储过程通过Dapper运行SQL备份(我的应用程序的其余部分使用Dapper,所以我宁愿保持这部分运行通过它)。 它工作得很好,直到CommandTimeout开始。 using (var c = SqlConnection(connstring)) { c.Open(); var p = new DynamicParameters(); // fill out p c.Execute("xp_backup_database", p, commandType: CommandType.StoredProcedure); } 我知道的唯一CommandTimeout设置是在SqlCommand中。 有没有办法通过Dapper来设置?

如何dynamic地为Dapper查询创build参数

我有一个值的字典例如“名字”:“亚历克斯” 有没有办法将这个传递给Dapper作为查询的参数? 这是一个显示我想要做什么的例子。 IDictionary<string, string> args = GetArgsFromSomewhere(); string query = "select * from people where Name = @Name"; var stuff = connection.Query<ExtractionRecord>(query, args);

交易与小巧的网点

我想在多个表上运行多个插入语句。 我正在使用dapper.net。 我没有看到任何处理与dapper.net交易的方式。 请分享您如何使用dapper.net进行交易的想法。

使用Dapper执行插入和更新

我对使用Dapper感兴趣 – 但从我能告诉它只支持查询和执行。 我没有看到Dapper包含插入和更新对象的方法。 鉴于我们的项目(大多数项目?)需要插入和更新,与Dapper一起进行插入和更新的最佳做法是什么? 我们最好不用诉诸参数构build的ADO.NET方法等。 我现在想到的最好的答案是使用LinqToSQL进行插入和更新。 有更好的答案吗?