📜  c#中的连接(1)

📅  最后修改于: 2023-12-03 15:13:53.281000             🧑  作者: Mango

C#中的连接

在C#中,连接(或称为“链接”)通常指数据库连接,用于访问和操作数据库。C#中的连接可以使用不同的方式进行实现,包括:

  • ADO.NET连接
  • Entity Framework连接
  • LINQ连接
ADO.NET连接

ADO.NET是一个数据访问库,用于在.NET应用程序中连接和操作多种数据源,包括关系型数据库、XML文档和文本文件等。

使用ADO.NET连接数据库的基本步骤如下:

  1. 引用System.Data.SqlClient命名空间。
  2. 创建SqlConnection对象,将连接字符串作为参数传递给构造函数。
  3. 打开连接。
  4. 使用SqlCommand对象执行SQL语句。
  5. 关闭连接。

下面是一个使用ADO.NET连接SQL Server的示例代码:

using System.Data.SqlClient;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword";
            SqlConnection connection = new SqlConnection(connectionString);
            connection.Open();
            SqlCommand command = new SqlCommand("SELECT * FROM myTable", connection);           
            SqlDataReader reader = command.ExecuteReader();
            while (reader.Read())
            {
                Console.WriteLine(reader["ColumnName"].ToString());
            }
            reader.Close();
            connection.Close();
        }
    }
}
Entity Framework连接

Entity Framework是一种ORM(对象关系映射)框架,用于将.NET应用程序中的对象与数据库表进行映射。在Entity Framework中,连接用于访问和操作数据源。

使用Entity Framework连接数据库的基本步骤如下:

  1. 引用System.Data.Entity命名空间。
  2. 在应用程序中定义一个继承自DbContext的类。在该类中,可以定义代表数据库表的实体类,以及代表数据库表之间关系的导航属性。
  3. 在该类的构造函数中,调用基类DbContext的构造函数,并将连接字符串作为参数传递进去。
  4. 在应用程序中使用创建好的DbContext对象执行CRUD操作。

下面是一个使用Entity Framework连接SQL Server的示例代码:

using System.Data.Entity;

namespace ConsoleApp1
{
    class MyDbContext : DbContext
    {
        public DbSet<MyEntity> MyEntities { get; set; }

        public MyDbContext() : base("Data Source=myServerAddress;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword")
        {
        }
    }

    class MyEntity
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            using (var db = new MyDbContext())
            {
                var entities = db.MyEntities.Where(e => e.Name.Contains("John")).ToList();
                foreach (var entity in entities)
                {
                    Console.WriteLine(entity.Name);
                }
            }
        }
    }
}
LINQ连接

LINQ是一种语言集成查询,它允许在.NET应用程序中使用统一的语法对不同类型的数据源进行查询。在.NET中,可以使用LINQ查询包括数据库、XML文档、内存对象等数据源。

使用LINQ连接数据库的基本步骤如下:

  1. 引用System.Linq命名空间。
  2. 在应用程序中定义一个继承自DbContext的类。
  3. 构造LINQ查询,用于从数据库中检索数据。
  4. 执行查询,返回结果集。

下面是一个使用LINQ连接SQL Server的示例代码:

using System.Linq;

namespace ConsoleApp1
{
    class MyEntity
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            using (var db = new MyDbContext())
            {
                var entities = from e in db.MyEntities
                               where e.Name.Contains("John")
                               select e;
                foreach (var entity in entities)
                {
                    Console.WriteLine(entity.Name);
                }
            }
        }
    }
}

以上就是C#中连接数据库的几种常见方式,您可以根据实际情况选择合适的方式进行开发。