मैं एक वस्तु है कि मैं पहले से EntityFramework 4.1 (CodeFirst)इकाई की रूपरेखा 4.1 (CodeFirst)
वर्ग नौकरी निम्नलिखित गुण है के साथ सहेजा है अद्यतन करने के लिए कोशिश कर रहा हूँ में एक बच्चे वस्तु के लिए एक संदर्भ अद्यतन कर रहा है ...
public class Job
{
[key]
public int Id { get; set; }
public string Title { get; set; }
public Project Project { get; set; }
public JobType JobType { get; set; }
public string Description { get; set; }
}
प्रारंभिक काम करता है ठीक बनाने के लिए, लेकिन अद्यतन केवल तार में परिवर्तन करता है ..
अगर मैं बच्चे वस्तुओं को बदलने JobTypeA
से JobTypeB
को JobType
संपत्ति जैसे - टी वह परिवर्तन प्रतिबद्ध नहीं है ...
मैं जॉबटाइप में बदलाव करने की तलाश नहीं कर रहा हूं - केवल नौकरी के लिए।
using (var context = new JobContext())
{
context.Jobs.Attach(job);
context.Entry(job).State = EntityState.Modified;
context.SaveChanges();
}
एसक्यूएल प्रोफाइलर पर एक नज़र होने - आईडी भी अद्यतन के लिए भेजे जा रहे हैं - लेकिन वे प्रारंभिक डालने के लिए कर रहे हैं!
"यह एक सामान्य स्थिति है जो आपके मॉडल में गुणों के रूप में विदेशी कुंजी का पर्दाफाश करती है तो बहुत आसान हो रही है" यह। इसे प्रत्येक ईएफ-ट्यूटोरियल में शामिल किया जाना चाहिए। यह अविश्वसनीय है कि यह चीजें कैसे "बस काम करता है" बनाता है। –
@EugenTimm अलग-अलग अपडेट करते समय यह कैसे काम करता है? क्या आप नेविगेशन प्रॉपर्टी, या एफके अपडेट करते हैं? –