关于EntityFreamwork普通sql语句操作
2019-01-14 本文已影响0人
Aneko
关于EntityFreamwork普通sql语句操作
在EF的项目中,通过ADO.NET的方式操作数据库;
1.简单select的查询,方式和AD0.NET基本一致
db.Database.Connection.Open(); //打开数据库连接
using (dal.Database.Connection)
{
var command = dal.Database.Connection.CreateCommand();
command.Parameters.AddRange(paramter.ToArray()); // sql参数
command.CommandText = sql; //sql 语句
var reader = command.ExecuteReader();
if (reader.HasRows)//HasRows判断reader中是否有数据
{
while (reader.Read()) //Read()方法读取下一条记录,如果没有下一条,返回false,则表示读取完成
{
}
}
}
2.简单的ExecuteScalar查询
int count = dal.Database.SqlQuery<int>("select count(1) from table where id = @id ", new SqlParameter("@id", 1)).FirstOrDefault();
3.带事务的操作
using (TransactionScope transaction = new TransactionScope())
{
transaction.Rollback();
transaction.Complete();
}