如何使用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")
如果您使用实体框架,您将如何执行查询:
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岁的员工,其中Age
是Employee
表的属性。它将自动映射为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
}