📜  ASP.NET-数据库访问(1)

📅  最后修改于: 2023-12-03 14:59:24.593000             🧑  作者: Mango

ASP.NET 数据库访问

ASP.NET 是一个功能强大的开发框架,用于构建动态网站和 Web 应用程序。数据库是 Web 应用程序的重要组成部分,而在 ASP.NET 中,我们可以通过多种方式和技术来访问和操作数据库。

ADO.NET

ADO.NET(ActiveX Data Objects)是一组用于访问数据的技术和类库,它是 ASP.NET 中最常用的数据库访问方式之一。以下是一些常见的 ADO.NET 类:

  • SqlConnection:用于建立与数据库的连接。
  • SqlCommand:用于执行 SQL 命令和存储过程。
  • SqlDataReader:用于读取和处理查询结果。
  • SqlDataAdapter:用于填充数据集和更新数据库。

下面是一个使用 ADO.NET 连接到数据库并执行查询的示例代码(C#):

using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    
    string sqlQuery = "SELECT * FROM Customers";
    
    SqlCommand command = new SqlCommand(sqlQuery, connection);
    
    using (SqlDataReader reader = command.ExecuteReader())
    {
        while (reader.Read())
        {
            string customerId = reader["CustomerId"].ToString();
            string companyName = reader["CompanyName"].ToString();
            
            Console.WriteLine("Customer ID: " + customerId);
            Console.WriteLine("Company Name: " + companyName);
            Console.WriteLine();
        }
    }
}
Entity Framework

Entity Framework 是一个对象关系映射(ORM)框架,它提供了一种面向对象的方式来操作数据库。使用 Entity Framework,我们可以通过创建实体类来表示数据库表,然后通过 LINQ(Language Integrated Query)来查询和操作这些实体。

以下是一个使用 Entity Framework 连接到数据库并查询数据的示例代码(C#):

using (var context = new MyDbContext())
{
    var customers = context.Customers.Where(c => c.City == "London").ToList();
    
    foreach (var customer in customers)
    {
        Console.WriteLine("Customer ID: " + customer.CustomerId);
        Console.WriteLine("Company Name: " + customer.CompanyName);
        Console.WriteLine();
    }
}
Dapper

Dapper 是一个轻量级的微 ORM 框架,它提供了一种高效的方式来执行数据库操作。相较于 Entity Framework,Dapper 更加灵活和快速,适用于需要更高性能的场景。

以下是一个使用 Dapper 连接到数据库并执行查询的示例代码(C#):

using (var connection = new SqlConnection(connectionString))
{
    string sqlQuery = "SELECT * FROM Customers WHERE City = @City";
    
    var customers = connection.Query<Customer>(sqlQuery, new { City = "London" });
    
    foreach (var customer in customers)
    {
        Console.WriteLine("Customer ID: " + customer.CustomerId);
        Console.WriteLine("Company Name: " + customer.CompanyName);
        Console.WriteLine();
    }
}
总结

ASP.NET 提供了多种强大的方式来访问和操作数据库。通过 ADO.NET、Entity Framework 或 Dapper,您可以根据项目需求选择适合的数据库访问技术和方式。无论是简单的查询还是复杂的操作,ASP.NET 都可以满足您的需求,并提供高效、可靠的数据库访问功能。