EntityFramework对数据库的操作
EF实体模型可以实现通过Linq对数据库进行增删改查,同样也可以通过直接写SQL语句来实现;如:
using (BDQQGame db = new BDQQGame()) { string strCommandText = @"SELECT QQGameId, Name,GameType,StarLevel,ImageUrl,Url,DownloadTimes,FakeDownloadTimes,GameSize,IsOffShelves,Sort FROM QQGame AS QG(NOLOCK) WHERE QQGameId=@qqGameId"; return db.ExecuteStoreQuery<Model.Game>(strCommandText, new SqlParameter("@qqGameId", qqGameId)).FirstOrDefault(); }
这是通过SqlParameter实现参数化查询,EF提供了更简单的办法来实现参数化查询;
using (BDQQGame db = new BDQQGame()) { string strCommandText = @"SELECT QQGameId, Name,GameType,StarLevel,ImageUrl,Url,DownloadTimes,FakeDownloadTimes,GameSize,IsOffShelves,Sort FROM QQGame AS QG(NOLOCK) WHERE QQGameId=@p0"; return db.ExecuteStoreQuery<Model.Game>(strCommandText, 12).FirstOrDefault(); }
EF默认,在sql语句中通过@p加上数字(从0开始),再在ExecuteStoreQuery方法中传入对应的参数来实现参数化查询。