91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 數據庫 > 
  • Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

發布時間:2020-06-16 01:29:08 來源:網絡 閱讀:321 作者:鄒君安 欄目:數據庫

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

1>. 創建一個控制臺程序
2>. 添加一個 ADO.NET實體數據模型,選擇對應的數據庫與表(StudentModel.edmx)
3>. 控件臺代碼

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

        static void Main(string[] args)
        {            // 創建一個網關接口,TestData是數據庫名
            TestDataEntities td = new TestDataEntities();            
            // 創建一個實體對象,Student是表映射過來的對象,將其賦值
            Student st1 = new Student();
            st1.StudentID = "s4";
            st1.StudentName = "test1";
            st1.Age = 20;            // 將實體對象添加到網關接口,插入操作
            td.Student.AddObject(st1);            // 網關保存并改變
            td.SaveChanges();

            Console.WriteLine("添加成功!");
        }

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

如上 StudentModel.edmx 是生成的實體模型就是 映射表,里面包含對象于表的定義

Entity Framework 增刪改查 操作


1>. 基本同上
2>. 控件臺代碼

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

    class Program
    {        // 創建一個網關接口,TestData是數據庫名,靜態方法只能調用靜態類
        static TestDataEntities stuEntities = new TestDataEntities();        static void Main(string[] args)
        {            // 創建一個實體對象,Student是表映射過來的對象,將其賦值
            Student st1 = new Student();
            st1.StudentID = "s4";
            st1.StudentName = "小明";
            st1.Age = 20;            //InsertStu(st1);            //DeleteStu("s4");            //Student stu2 = FindStudentByID("s4");            //stu2.StudentName = "小明";            //UpdateStu(stu2);            //Console.WriteLine(stu2.StudentName);
            

        }        // 添加操作
        public static void InsertStu(Student stu)
        {            // 將實體對象添加到網關接口,插入操作
            stuEntities.Student.AddObject(stu);            // 網關保存并改變
            stuEntities.SaveChanges();
            Console.WriteLine("添加成功!ID:"+stu.StudentID);
        }        // 刪除操作
        public static void DeleteStu(string ID)
        {
            Student stu = FindStudentByID(ID);
            stuEntities.Student.DeleteObject(stu);
            stuEntities.SaveChanges();
            Console.WriteLine("刪除成功!ID:" + stu.StudentID);

        }        // 更新操作
        public static void UpdateStu(Student stu)
        {            // 其中 var 為 IQueryable<Student>類型,繼承IEnumerable<Student>            // 繼承IEnumerable的類都能實現 foreach
            var student = from s in stuEntities.Student                          where s.StudentID == stu.StudentID                          select s;            // 得到student集合里面的單一實體
            var oldStu = student.SingleOrDefault();            // 修改對應的屬性值
            oldStu.StudentName = stu.StudentName;
            oldStu.Age = stu.Age;            
            // 保存修改
            stuEntities.SaveChanges();
            Console.WriteLine("更新成功!ID:" + stu.StudentID);
        }    // 更新數據 新方法
        public bool UpdateEntity(MvcHotel.Model.Customer entity)
        {            bool result = false;            // 添加對象到上下文
            he.Attach(entity);            // 改變新加入對象的狀態,設置為 已修改
            he.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Modified);            if (he.SaveChanges() > 0)
            {
                result = true;
            }            return result;
        }        // 查詢操作
        public static Student FindStudentByID(string ID)
        {        // 方式1: Linq to EF            // 根據ID查詢Student,并得到集合中的單一實體
            var stu = (from s in stuEntities.Student                       where s.StudentID == ID                       select s).SingleOrDefault();        // 方式2: Entity SQL
            string sql = "select Value c from TestDataEntities.Student as c ";
            ObjectQuery<Student> query = stuEntities.CreateQuery<Student>(sql);
            ObjectResult<Student> results = query.Execute(MergeOption.NoTracking);            //return stu;
            return query.SingleOrDefault();
        }
    }

Entity Framework 的小實例:在項目中添加一個實體類,并做插入操作

EF中操作數據庫的網關

ObjectContext封裝 .NET Framework 和數據庫之間的連接。此類用作“創建”、“讀取”、“更新”和“刪除”操作的網關
ObjectContext 類為主類,用于與作為對象(這些對象為 EDM 中定義的實體類型的實例)的數據進行交互
ObjectContext 類的實例封裝以下內容:
a> 到數據庫的連接,以 EntityConnection 對象的形式封裝。
b> 描述該模型的元數據,以 MetadataWorkspace 對象的形式封裝
c> 用于管理緩存中持久保存的對象的 ObjectStateManager 對象


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

松原市| 吕梁市| 馆陶县| 湘潭县| 瑞昌市| 昌图县| 潢川县| 宁强县| 都匀市| 镇康县| 鲁山县| 蓬溪县| 咸宁市| 稻城县| 含山县| 驻马店市| 洞口县| 治县。| 长白| 湘阴县| 丰县| 文安县| 庆元县| 乡宁县| 荣成市| 吉首市| 扶沟县| 隆回县| 巴中市| 益阳市| 紫金县| 利辛县| 固镇县| 阳新县| 锦州市| 淅川县| 洛南县| 苗栗县| 大关县| 米林县| 台州市|