代码之家  ›  专栏  ›  技术社区  ›  DanP

轻巧ADO.NET辅助类

  •  2
  • DanP  · 技术社区  · 14 年前

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

    更新:

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

    4 回复  |  直到 14 年前
        1
  •  2
  •   Brad    14 年前

    丹,这是我几年来积累起来的一门课。我用ADO.NET广泛地。它支持填充、非查询、标量等简单操作,但也支持获取模式、事务、批量插入等。

    DataAdapter

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

        2
  •  1
  •   DanP    14 年前

    最后我和 Fluent Ado.net

        3
  •  1
  •   Caleb Bell    8 年前

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

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

        4
  •  0
  •   Henry Doan    9 年前

    希望对您有所帮助:

    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;
            }
    }
    
    推荐文章