如何使用LINQ做简单的数据库查询

本文关键字:数据库 查询 简单 何使用 LINQ | 更新日期: 2023-09-27 18:15:47

下面是我如何在.NET 2.0中进行数据访问。我应该如何在.NET 4.0中使用LINQ来做到这一点?

Dim dt As DataTable
Using oDB As OleDbConnection = GetDbConnection()
    oDB.Open()
    Using oCmd As New OleDbCommand("SELECT * FROM TABLE1 WHERE COLUMN1 = @id", oDB)
    oCmd.Parameters.AddWithValue("@id", UserId)
    oDB.Open()
    dt = New DataTable()
        Using da As OleDbDataAdapter = New OleDbDataAdapter(oCmd)
            da.Fill(dt)
        End Using
    End Using
End Using
Msgbox "Surname: " + dt.Rows(0)("Surname")

如何使用LINQ做简单的数据库查询

如果您使用实体框架,您将如何执行查询:

using(var context = new MyEntities())
{
    var result = context.Table1.Where(x => x.Column1 == id);
}

你也可以考虑从LINQ to SQL开始。

DataClasses1DataContext db = new DataClasses1DataContext();
var query = (from u in db.table1 where u.Column1 == id select u).FirstOrDefault;

首先,实体框架必须安装在您的机器上。您必须在您的项目中添加实体模型。它将通过使用Visual Studio内部工具自动将所有数据库表映射到类中。然后,您必须检索数据,如。

假设在你的数据库中有一个表Employee,它映射到你的。net项目中的Employee类。

您必须使用以下代码来获取年龄小于45岁的员工,其中AgeEmployee表的属性。它将自动映射为Employee类的属性。

开始了。

using(var _entities = new MyDBEntities())
{
   //LINQ query
   var query = from emp in _entities.Employees //Employees is the collection of Employee
               where emp.Age < 45
               select emp;
  //query object will be containing all the employees in the form of collection whose age is
  // less than 45
}