日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
淺析LinqtoSQL更新數(shù)據(jù)時容易忽略的問題

有時候,我們還是會使用Linq to Sql來進行LINQ更新數(shù)據(jù)Update,執(zhí)行的步驟:獲取一個記錄-〉更新字段 -〉submitChanges()

創(chuàng)新互聯(lián)公司是一家企業(yè)級云計算解決方案提供商,超15年IDC數(shù)據(jù)中心運營經(jīng)驗。主營GPU顯卡服務器,站群服務器,資陽移動機房,海外高防服務器,成都機柜租用,動態(tài)撥號VPS,海外云手機,海外云服務器,海外服務器租用托管等。

昨天遇到了一個問題,流程都沒有錯,但是LINQ更新數(shù)據(jù)的時候始終沒有更新到數(shù)據(jù)庫,

大概得偽代碼如下:

      
      
      
  1. public void UpdateUser(User user) 
  2.             DataContext context = new DataContext("conn"); 
  3.             User existsUser = GetUser(user.ID); 
  4.             existsUser.Name = user.Name; 
  5.             //............. 
  6.             context.SubmitChanges(); 
  7. }

簡單的代碼,大概的意思也是獲取一個記錄,然后更新字段,再submitChanges,大體看看沒有錯,但是!?。。〈蠹矣袥]有發(fā)覺,我們的context是個私有變量,而我們的GetUser雖然也是從context中取得,不過它用的是它自己的context,也就是說對于程序來說,它是兩個對象,所以我們這里在submitChanges的時候,無論你怎么改都是沒有效果的,數(shù)據(jù)庫中始終不會改變,My God ,或許你會覺得這誰不知道啊,但是往往我們真的會忽略這一點,記得以前考試,往往都是難的題目基本上全對,但越簡單越容易的題目,卻會經(jīng)常犯錯,希望這些能對你有些啟發(fā)。

好了,知道了為什么出錯,修改也簡單了,兩種方法:

LINQ更新數(shù)據(jù)方法一:

      
      
      
  1. public void UpdateUser(User user) 
  2.     DataContext context = new DataContext("conn"); 
  3.             //從當前context取 
  4.     User existsUser = context.Users.SingleOrDefault(e => e.ID.Equals(user.ID); 
  5.     existsUser.Name = user.Name; 
  6.             //............. 
  7.     context.SubmitChanges(); 
  8. }

LINQ更新數(shù)據(jù)方法二:

     
     
     
  1. //把context設(shè)成上下文公用的 
  2. DataContext context = new DataContext("conn"); 
  3. public void UpdateUser(User user) 
  4. {
  5.     User existsUser = GetUser(user.ID);            
  6.     existsUser.Name = user.Name; 
  7.             //............. 
  8.     context.SubmitChanges(); 
  9. }

好了,文章比較簡單,也或許你覺得不值得一提,目的也不是為了解決這個問題,希望大家能在做項目中,一定要仔細,因為往往你的一個小小的疏忽,會給項目、公司帶來不可預知的后果。


本文題目:淺析LinqtoSQL更新數(shù)據(jù)時容易忽略的問題
標題鏈接:http://www.5511xx.com/article/cdihosc.html