मैं कुछ सुधार कोड चला रहा हूं जो संस्थाओं के एक बड़े ढेर पर चलता है, क्योंकि इसकी प्रगति की गति कम हो जाती है, ऐसा इसलिए है क्योंकि संदर्भ में ट्रैक किए गए संस्थाओं की संख्या प्रत्येक पुनरावृत्ति के साथ बढ़ जाती है, इसमें लंबा समय लग सकता है इसलिए मैं अंत में बदलावों को बचा रहा हूं। प्रत्येक पुनरावृत्ति प्रत्येक पुनरावृत्ति स्वतंत्र है और प्रीवियस लोडेड संस्थाओं को नहीं बदलता है।
मुझे पता है कि मैं परिवर्तन ट्रैकिंग को बंद कर सकता हूं, लेकिन मैं नहीं चाहता, क्योंकि यह एक बल्क इंसर्ट कोड नहीं है, लेकिन संस्थाओं को लोड करना और कुछ चीजों की गणना करना और यदि संख्याएं सही नहीं हैं तो नए नंबर सेट करना और अपडेट करना / हटाना / बनाना कुछ अतिरिक्त संस्थाएँ। मुझे पता है कि मैं प्रत्येक पुनरावृत्ति के लिए एक नया DbContext बना सकता हूं और शायद यह एक ही उदाहरण में सभी करने की तुलना में तेजी से चलेगा, लेकिन मैं सोच रहा हूं कि एक बेहतर तरीका हो सकता है।
तो सवाल है; क्या db संदर्भ में पहले लोड की गई संस्थाओं को साफ़ करने का कोई तरीका है?
context.Entry(entity).State = EntityState.Detachedऔर यह उस विशेष इकाई को ट्रैक करना बंद कर देगा।