📅  最后修改于: 2023-12-03 15:13:53.281000             🧑  作者: Mango
在C#中,连接(或称为“链接”)通常指数据库连接,用于访问和操作数据库。C#中的连接可以使用不同的方式进行实现,包括:
ADO.NET是一个数据访问库,用于在.NET应用程序中连接和操作多种数据源,包括关系型数据库、XML文档和文本文件等。
使用ADO.NET连接数据库的基本步骤如下:
System.Data.SqlClient
命名空间。SqlConnection
对象,将连接字符串作为参数传递给构造函数。SqlCommand
对象执行SQL语句。下面是一个使用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是一种ORM(对象关系映射)框架,用于将.NET应用程序中的对象与数据库表进行映射。在Entity Framework中,连接用于访问和操作数据源。
使用Entity Framework连接数据库的基本步骤如下:
System.Data.Entity
命名空间。DbContext
的类。在该类中,可以定义代表数据库表的实体类,以及代表数据库表之间关系的导航属性。DbContext
的构造函数,并将连接字符串作为参数传递进去。下面是一个使用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是一种语言集成查询,它允许在.NET应用程序中使用统一的语法对不同类型的数据源进行查询。在.NET中,可以使用LINQ查询包括数据库、XML文档、内存对象等数据源。
使用LINQ连接数据库的基本步骤如下:
System.Linq
命名空间。DbContext
的类。下面是一个使用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#中连接数据库的几种常见方式,您可以根据实际情况选择合适的方式进行开发。