ExecuteSqlCommand为执行命令的接口, SqlQuery 为返回查询结果
1、Database.ExecuteSqlCommand 方法 (String, Object[])
2、Database.SqlQuery 方法 (Type, String, Object[])
实例:
1 var stu = dbContext.Student.FirstOrDefault<Student>(t => t.Id == 1); 2 3 var list2 = from a in dbContext.Student 4 join b in dbContext.Course 5 on a.Id equals b.StudentId 6 where a.Id == 1 7 select new { a.Name, a.Sex, a.Aage, b.CourseName }; 8 gridView.DataSource = list2.ToList(); 9 gridView.DataBind(); 10 11 var cnt = dbContext.Database.ExecuteSqlCommand("update student set name=@name where id = @id", new SqlParameter[] { 12 new SqlParameter("@id", 10), 13 new SqlParameter("@name","学生姓名") });//执行更新操作 14 15 var res = dbContext.Database.SqlQuery<Student2>("select Id,name from student where id=@id", new SqlParameter[] { 16 new SqlParameter("@id",10) }); 17 //返回数据 18 //var res = dbContext.Database.SqlQuery<Student2>("select Id,name from student where id=@id", new SqlParameter("@id", 10)); 19 gridView.DataSource = res.ToList(); 20 gridView.DataBind();
ps:Student2不一定为映射的实体对象,可以为自定义其他对象,但实体对象的属性数量必须多余或等于SqlQuery查询语句中查询返回的列数量。
参考:
https://msdn.microsoft.com/zh-cn/library/system.data.entity.database.aspx