2012-02-15 12 views
5

में एक एकल कॉलम अपडेट करना मेरे पास एकाधिक कॉलम वाली एक तालिका है और मैं केवल एक कॉलम अपडेट करना चाहता हूं। मैं एक विधि लिख रहा हूं जो पहले रिकॉर्ड लाता है और फिर कॉलम के मान को बदलकर इसे अपडेट करता है। इस तरह:LINQ से SQL

using (myDC...) 
{ 
    var recordInDB = (from... 
        where .... 
        select r).SingleOrDefault(); 

    if (recordInDB != null) 
    { 
    recordInDB.MyColumn = newValue; 

    myDC.SubmitChanges(); 
    } 

इस सभी स्तंभों के रूप में वे थे रखने के लिए और एक मैं बदलना चाहते हैं या इस सभी स्तंभों को साफ़ करें और नए मान के साथ स्तंभ MyColumn अद्यतन करने के लिए जा रहा है केवल अद्यतन करने के लिए जा रहा है?

उत्तर

6

यह आपकी तालिका में अन्य कॉलम नहीं बदलेगा। केवल वह जिसे आप अपडेट कर रहे हैं।

4

यह उन स्तंभों को रखने जा रहा है जिन्हें आपने पढ़ने के समय डेटाबेस में जिस तरह से स्पर्श नहीं किया था।

SubmitChanges पर कॉल LINQ2SQL डेटाबेस के मानों में ऑब्जेक्ट के फ़ील्ड में मानों की तुलना करता है, और केवल उन लोगों को अद्यतन करता है जो बदल गए हैं।