2

谁能指出我当前提供 ADO.NET 功能基本包装的库?我正在寻找与旧 SqlHelper 类类似的东西,并且对使用数据访问应用程序块并不真正感兴趣(因为它对于我的简单需求来说有点矫枉过正)。这些天来,每个人都直接使用什么来直接使用 ADO.NET?

更新:

我应该注意到我已经在使用 ORM(Nhibernate);我刚刚遇到了需要原始 ADO.NET 调用的情况 - 因此无需建议使用 ORM 而不是使用 ADO.NET

4

4 回答 4

2

丹,这是我几年来建立的一门课程。我广泛使用 ADO.NET。它支持像 Fill、NonQuery、Scalar 等简单的东西,但也支持模式、事务、批量插入等。

DataAdapter (VisualStudio 2010 解决方案)

如果您需要更多帮助,请告诉我(注意:我删除了一些指向其他对象的链接以便为您发布此内容,所以如果它坏了,请告诉我)。

于 2010-09-23T18:55:33.850 回答
1

我在这里编写了自己的小助手库(一个 .cs 文件): https ://github.com/jhgbrt/yadal/blob/master/Net.Code.ADONet.SingleFile/Db.cs

您可以在此处找到未加入的版本、测试和自述文件: https ://github.com/jhgbrt/yadal

于 2012-07-27T12:05:42.693 回答
1

为此,我最终选择了Fluent Ado.net;很棒的小库,用于执行不时弹出的简单的带外 ado.net 内容。

于 2010-10-15T23:55:29.920 回答
0

希望它有帮助:

public static class DbHelper {

        public static IDbCommand CreateCommand(this IDbConnection conn, string sql, params object[] args) {
            if (!(conn is SqlConnection))
                throw new NotSupportedException();
            var command = (SqlCommand)conn.CreateCommand();
            try { 
                var paramterNames = new List<string>(args.Length);
                for (int i = 0; i < args.Length; i++) {
                    string name = "@p" + i;
                    command.Parameters.AddWithValue(name, args[i]);
                    paramterNames.Add(name);
                }
                command.CommandText = string.Format(sql, paramterNames.ToArray());
            }
            catch (Exception) {
                if (command != null)
                    command.Dispose();
                throw;
            }
            return command;
        }
}
于 2016-01-10T04:23:52.540 回答