मुझे LINQ से SQL को डीबग करने और परिवर्तन सबमिट करने का प्रयास करने में वास्तव में कठिन समय हो रहा है।LINQ से SQL सबमिट करने के लिए डिबगिंग सबमिट करें()
मैं http://weblogs.asp.net/scottgu/archive/2007/07/31/linq-to-sql-debug-visualizer.aspx का उपयोग कर रहा हूं, जो सरल प्रश्नों को डीबग करने के लिए बहुत अच्छा काम करता है।
मैं अपने आवेदन से निम्नलिखित स्निपेट के साथ अपने प्रोजेक्ट के लिए DataContext कक्षा में काम कर रहा हूँ:
JobMaster newJobToCreate = new JobMaster();
newJobToCreate.JobID = 9999
newJobToCreate.ProjectID = "New Project";
this.UpdateJobMaster(newJobToCreate);
this.SubmitChanges();
जब मैं this.SubmitChanges चलाने मैं कुछ बहुत ही अजीब अपवाद पकड़ेगा;
Index was outside the bounds of the array.
स्टैक ट्रेस स्थानों मैं में कदम नहीं कर सकते है:
at System.Data.Linq.IdentityManager.StandardIdentityManager.MultiKeyManager`3.TryCreateKeyFromValues(Object[] values, MultiKey`2& k)
at System.Data.Linq.IdentityManager.StandardIdentityManager.IdentityCache`2.Find(Object[] keyValues)
at System.Data.Linq.IdentityManager.StandardIdentityManager.Find(MetaType type, Object[] keyValues)
at System.Data.Linq.CommonDataServices.GetCachedObject(MetaType type, Object[] keyValues)
at System.Data.Linq.ChangeProcessor.GetOtherItem(MetaAssociation assoc, Object instance)
at System.Data.Linq.ChangeProcessor.BuildEdgeMaps()
at System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
at System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
at System.Data.Linq.DataContext.SubmitChanges()
at JobTrakDataContext.CreateNewJob(NewJob job, String userName) in D:\JobTrakDataContext.cs:line 1119
किसी को भी किसी भी उपकरण या तकनीक वे का उपयोग है? क्या मुझे कुछ आसान याद आ रही है?
संपादित: मैं Slace के सुझाव का उपयोग करके सेटअप .net डिबगिंग है, फिर भी .net 3.5 कोड अभी तक उपलब्ध नहीं है: http://referencesource.microsoft.com/netframework.aspx
EDIT2: मैं प्रति sirrocco के रूप में InsertOnSubmit को बदल दिया है सुझाव, अभी भी एक ही त्रुटि हो रही है।
EDIT3: मैं उत्पन्न एसक्यूएल लॉग इन करने और ChangeExceptoinException पकड़ने की कोशिश कर सैम सुझाव क्रियान्वित किया है। ये सुझाव किसी और प्रकाश को नहीं छोड़ते हैं, जब भी मेरा अपवाद फेंक दिया जाता है तो मैं वास्तव में एसक्यूएल उत्पन्न नहीं कर रहा हूं।
EDIT4: मुझे एक उत्तर मिला जो नीचे मेरे लिए काम करता है। यह सिर्फ एक सिद्धांत है लेकिन इसने मेरे वर्तमान मुद्दे को ठीक कर दिया है। बिल्कुल फ़िल्टर्ड अन्य अनुप्रयोगों को हल करने आदि डाटाबेस को ऐक्सेस -
यह त्रुटि कई क्लाइंट्स के साथ हुई, केवल विंडोज एक्सपी के साथ मशीनों पर, मुझे यह हॉट-फ़िक्स मिला जो समस्या हल करता है। [I386] (http://hotfixv4.microsoft.com/.NET%20Framework%203.5%20-%20Windows%20Server%202003,%20WindowsXP,%20Windows%20Vista,%20Windows%20Server%202008%20 (MSI)/sp1/DevDiv975687/30729.5821/मुफ्त/448814_intl_i386_zip.exe) और [x64] (http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=963657&kbln=en-us) – gpiccin