public class GuestbookDB { GuestbookEntities1 db = new GuestbookEntities1(); //GuestbookEntities1: 資料庫,如一個公司別的資料庫 //新增一筆資料 public void Create(string name, string content) { Contents NewData = new Contents(); //Contents: 資料庫底下的一個Table //因db.Table.Add需要寫入完整的table,所以要先產生一個Content的物件,接收各欄位的值後,再回寫至DB //如果接收到是完整的table,就用下一個方法,直接add到DB即可 NewData.name = name; NewData.content = content; db.Contents.Add(NewData); db.SaveChanges(); } public void Create(Contents NewData) { db.Contents.Add(NewData); //Add語法似乎是資料庫(db)專用語法,所以不可以省略db,而直接用Table的Contenes.Add db.SaveChanges(); } //修改資料 public bool Update(int id, string name, string content) { //撈資料 Contents Data = db.Contents.Find(id); //不同於Create有在記憶體先產生一個物件,這邊可以直接把Data指到資料庫的位置去做修改 //判斷是否有資料 if (Data != null) { //修改資料的值 Data.name = name; Data.content = content; //儲存資料變更 db.SaveChanges(); return true; //對應到method宣告的會回傳bool值 } else { return false; } } public bool Update(Contents UpdateData) { Contents Data = db.Contents.Find(UpdateData.Id); if (Data != null) { Data.name = UpdateData.name; Data.content = UpdateData.content; //之後可以試試直接Data=UpdateData看看 db.SaveChanges(); return true; } else { return false; } } public bool Delete(int id) { Contents DeleteData = db.Contents.Find(id); if (DeleteData != null) { db.Contents.Remove(DeleteData); db.SaveChanges(); return true; } else { return false; } } //取得所有資料 public List<Contents> GetList() { //取得Contents的資料,並轉成List List<Contents> ContentList = db.Contents.ToList(); return ContentList; } //取得單一筆資料 public Contents GetContents(int id) { Contents Data = db.Contents.Find(id); return Data; } }
[training]ASP.NET MVC 5 – Entity Framework 2
Leave a Comment