国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

EF DB數據庫先行,的理解及其它與原生態SQL之間的互動

2019-11-11 04:19:25
字體:
來源:轉載
供稿:網友

Entity Framework DBFirst,即(EF DBFirst)的使用

個人理解:微軟吧數據庫與對象,也就是dal與model兩個層合并到了一起了,產生了一個中間件df(Entity Framework),其中的dbfirst,和動軟自動生成的代碼幾乎一樣其主要是用linq語句進行查詢,插入,更新,刪除,分別使用插入
   HBSIEntities entity = new HBSIEntities();            /*新建一個T_UserInfo表的實體,             * 即一個新行,為新行中的每一個字段賦值,             * 要明白,一個表可以看做一個實體,             * 表中的一行也可以看做一個實體*/            T_UserInfo userinforow = new T_UserInfo()            {                UserName = "bj",                Pwd = "123456",                NickName = "豬八戒",                Address = "高老莊",                Sfzh = "123452223333444423"            };            /*將新建的行實體添加到表實體中,             這個操作是在程序層面操作的,             * 并不會影響到數據庫層面*/            entity.T_UserInfo.AddObject(userinforow);            /*將程序層面的實體的改變更新到數據源中,             通過這行代碼,就會向數據庫中添加一條數據*/            entity.SaveChanges();修改
 HBSIEntities entity = new HBSIEntities();            /*更改表的實體,注意在最后加上了“Id=7”,             標識要更改實體表T_UserInfo中Id=7的行實體,             為字段重新賦值即可*/            T_UserInfo userinforow = new T_UserInfo()            {                UserName = "zbj",                Pwd = "234567",                NickName = "二師兄",                Address = "高老莊",                Sfzh = "123452223333444423",                Id=7            };            /*將改變的行實體附加到表實體中,             注意此時只是在程序層面對表實體進行更改*/            entity.T_UserInfo.Attach(userinforow);            /*使用對象狀態管理器ObjectStateManager             * 標識實體userinforow的狀態為“更改”而不是“刪除”,             EntityState有很多枚舉值,可以自己查看,一看即懂*/            entity.ObjectStateManager.ChangeObjectState(userinforow,EntityState.Modified);            /*將程序層面的實體的改變更新到數據源中,             通過這行代碼,就會更改數據庫中對應表中的數據*/            entity.SaveChanges();刪除先說刪除,和更改很想,只需要改2點。第一是在創建行實體的時候里面只需為Id屬性賦值即可,因為我們都是根據主鍵來刪除的,知道別的字段的值沒意義;第二就是更改EnrityState的枚舉值為Delete即可,見代碼
HBSIEntities entity = new HBSIEntities();                        T_UserInfo userinforow = new T_UserInfo()            {                                <span style="color:#ff0000;">Id = 7</span>            };                       entity.T_UserInfo.Attach(userinforow);                       entity.ObjectStateManager.ChangeObjectState(userinforow, <span style="color:#ff0000;">EntityState.Deleted</span>);            entity.SaveChanges();如何使用原生態呢,很簡單
  ctx.Database.ExecuteNonQuery()總結,其實偷懶的不二法寶,但是進行復雜查詢的時候需要借助sql原生態,比較合適,更新的時候每次更新很多數據,插入的時候也不能做到單獨每個表單插入,要很完整的插入,所以說這個中間件能提高開發效率,但是執行效率比較一般,生成:http://www.myexception.cn/database/1839805.html原生態sql使用http://www.cnblogs.com/lgx5/p/5854887.html
上一篇:凌亂的yyy

下一篇:PAT BASIC 1004

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汝南县| 五常市| 麻江县| 乐陵市| 山阳县| 阳江市| 开化县| 山东| 绥江县| 阳谷县| 高台县| 河源市| 临汾市| 福安市| 印江| 浏阳市| 银川市| 隆尧县| 大厂| 吉木萨尔县| 博爱县| 永川市| 洪泽县| 咸阳市| 商河县| 光泽县| 宜城市| 吴桥县| 高邑县| 碌曲县| 普安县| 台江县| 沙洋县| 嵊州市| 灯塔市| 财经| 昆明市| 酒泉市| 阿拉善盟| 宜兴市| 景洪市|