首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是ADO.NET?

什么是ADO.NET?
EN

Stack Overflow用户
提问于 2010-08-30 07:46:43
回答 4查看 441关注 0票数 2

我对理解ADO.NET感到困惑,在阅读了几篇文章之后,我不清楚什么是绩效考虑。

  • 什么是ADO.NET,什么是绩效考虑?
  • ADO.NET可以与SQL存储过程相关联,或者是不同的东西?

谢谢你们!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-30 07:49:28

Ado.net看作是一个托管库,它提供了访问外部数据源所需的所有类和功能(以及可能使用的)。这是最简单的思考方法。但是,由于它不是一个单独的库(因为它包含在.net库中),人们往往会感到困惑。我们可以说它是.net内部的一个图书馆。

维基百科上可以找到更彻底的解释。

存储过程是特定数据存储的一部分。Ado.net使您能够以标准化的方式调用这些存储过程。

MSDN的一个例子

代码语言:javascript
复制
using (SqlConnection connection = new SqlConnection(connectionString))
{
    // Create the Command and Parameter objects.
    SqlCommand command = new SqlCommand(queryString, connection);
    command.Parameters.AddWithValue("@pricePoint", paramValue);

    // Open the connection in a try/catch block. 
    // Create and execute the DataReader, writing the result
    // set to the console window.
    try
    {
        connection.Open();
        SqlDataReader reader = command.ExecuteReader();
        while (reader.Read())
        {
            Console.WriteLine("\t{0}\t{1}\t{2}", reader[0], reader[1], reader[2]);
        }
        reader.Close();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
    Console.ReadLine();
}

您可以看到Ado.net类的使用:

  • SqlConnection
  • SqlCommand
  • SqlDataReader

因此,Ado.net为您提供了所有这些功能,所以您不必每次想要访问外部数据源(关系数据库、服务等)时都重新发明轮子。

票数 2
EN

Stack Overflow用户

发布于 2010-08-30 07:59:35

ADO.NET是.NET框架的一个组件,允许您访问不同的数据源。存储过程是不同的:它是一个允许查询关系数据库并在数据库中运行的函数。

因此,您可以使用ADO.NET调用存储过程。例如,如下所示:

代码语言:javascript
复制
using (var con = new SqlConnection(SomeConnectionStringToTheDatabase))
using (var cmd = con.CreateCommand())
{
    con.open();
    con.CommandText = "NameOfTheStoredProcdureYouWantToInvoke";
    con.CommandType = CommandType.StoredProcedure;

    var result = command.ExecuteNonQuery();
}

我们用来调用存储过程的类SqlConnectionSqlCommand是ADO.NET的一部分。

票数 3
EN

Stack Overflow用户

发布于 2010-08-30 08:08:32

ADO.NET是.NET框架的一部分,它是数据库驱动程序和应用程序之间的层。.NET应用程序中的所有数据库访问都通过ADO.NET进行。

数据库驱动程序通常是本机.NET驱动程序,但也可以类似于ODBC驱动程序。

通过ADO.NET例程,您可以通过使用SQL查询、SQL存储过程或直接表绑定来访问数据库。这些都是特定于数据库的,并且取决于数据库和数据库驱动程序,但是有一个数据库扩展的SQL标准,所以至少有一些共同点。

您可以使用一些数据访问框架来代替ADO.NET,比如实体框架。但是他们没有替换ADO.NET,他们仍然使用ADO.NET层来访问数据库。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3598699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档