如何学习ADO.NET

16 ado.net

我需要学习ADO.NET来构建基于MS Office的应用程序.我在MSDN Library中读过很多关于ADO.NET的内容,但是对我来说一切看起来都很混乱.

使用ADO.NET时必须弄清楚的基础是什么?我想一些关键词就足以让我组织学习.

Kar*_*uin 6

有三个关键组件(假设你使用SQL服务器):

  • SQLConnection
  • SqlCommand
  • SqlDataReader

(如果你正在使用其他东西,请替换Sql为"Something",例如MySqlConnection,OracleCommand)

其他一切都是建立在其上的.

例1:

using (SqlConnection connection = new SqlConnection("CONNECTION STRING"))
using (SqlCommand command = new SqlCommand())
{
  command.commandText = "SELECT Name FROM Users WHERE Status = @OnlineStatus";
  command.Connection = connection;
  command.Parameters.Add("@OnlineStatus", SqlDbType.Int).Value = 1; //replace with enum
  connection.Open();

  using (SqlDataReader dr = command.ExecuteReader))
  {
      List<string> onlineUsers = new List<string>();

      while (dr.Read())
      {
         onlineUsers.Add(dr.GetString(0));
      }
  }
}
Run Code Online (Sandbox Code Playgroud)

例2:

using (SqlConnection connection = new SqlConnection("CONNECTION STRING"))
using (SqlCommand command = new SqlCommand())
{
  command.commandText = "DELETE FROM Users where Email = @Email";
  command.Connection = connection;
  command.Parameters.Add("@Email", SqlDbType.VarChar, 100).Value = "user@host.com";
  connection.Open();
  command.ExecuteNonQuery();
}
Run Code Online (Sandbox Code Playgroud)