EF操作數據庫的步驟和一些簡單操作語句


  這里是寫給我自己做記錄的,不會寫成一篇很好的博客,也不會置頂,如果有朋友看到了,而且覺得里面的內容不咋的,希望見諒哈!

關於這部分內容,這里推薦一篇總結的非常好的博客,如果你點擊進來了,那么請略過下面的內容,直接點擊這個鏈接,因為寫的真的不錯:https://www.cnblogs.com/gosky/p/5751815.html

  我個人還沒有對EF相關的內容進行詳細的整理,所以這篇隨筆的參考意義不大,只是貼一些代碼上去,以后有機會有時間,會對相關內容做一個總結。

使用EF操作數據庫的詳細步驟主要分為一下幾步:

1.創建EF實體數據庫模型:

在某個項目上點擊右鍵 添加 ==》數據 ==》ADO.Net實體數據庫模型 ==》然后按照提示去走;

 

2.實例化上下文

  首先找到需要實例化的上下文的名字,在ef實體里的這個文件里:

 

 打開該文件后,代碼如下:

 

 紅框處的名字就是該實體的上下文。

實例化上下文的具體做法如下:

FirstDBEntities1 db = new FirstDBEntities1();

 

3.使用上下文操作數據庫 之 查詢操作

(1)根據主鍵id獲取某個表的數據

操作方法為:

UserInfo userInfo = new UserInfo();

userInfo  =  db.UserInfo.Find(id);

 

 其中UserInfo是該數據表對應的實體類的類名,執行該操作后,即可獲取主鍵id為某個數的那一行的數據,然后通過 userInfo.XXX 即可獲去相應字段的值;

(2)獲取某個數據表全部數據

操作方法為:

List<UserInfo>  list = new List<UserInfo>

list = db.UserInfo.ToList();

 

 執行該操作后久會把該數據表中的所有數據都取出來,存放在一個List集合中;

(3)根據其他條件進行查詢

var user = db.UserInfo.Where(u => u.userName == "AAA" );

 

 這是使用lambda表達式進行查詢,查詢的結果是一個list集合,通過下面的方法可以遍歷取出這些數據:

foreach(var item in user)
{
      xxx = item.yyyy;          
}

 

 4.使用上下文操作數據庫 之 增

創建一個實體數據對象,並對其各個字段賦值,然后使用上下文執行增加操作,

UserInfo user = new UserInfo();
user.userName = "BBB";
user.passWord = "23456";
db.UserInfo.Add(user);

db.SaveChanges();

 

需要注意的是,在執行完添加操作之后,需要執行 db.SaveChanges() 操作, 這句話的意思是,把我們修改的內容更新到數據庫中。

5.使用長下文操作數據庫 之 改

首先要指定你修改的某一行的id:

UserInfo user = new UserInfo();
user.UserId = 3;

 

 接下來對要修改的字段進行重新賦值:

user.userName = "CCC";
user.passWord = "1234567";

 

然后執行修改操作:

 

db.Entry(user).State = EntityState.Modified;

 

 最后將修改保存到數據庫中

db.SaveChanges();

 

 

 如果只修改單個屬性,比如只修改userName,則寫為:

UserInfo user = new UserInfo();
user.userId = 3;
user.userName = "DDD";
db.Entry(user ).Property(u => u.userName).IsModified = true;
db.SaveChanges();

 

 6. 使用長下文操作數據庫 之 刪

UserInfo user = new UserInfo();
user.userId = 3;

db.Entry<UserInfo>(user).State = System.Data.Entity.EntityState.Deleted;

db.SaveChanges();

 

 好了,先簡單寫一下,只是草草記錄,后續有時間會進行系統的歸納總結。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM