كيف تجعل submitchanges فقط تقدم تغييرًا معينًا وليس كل التغييرات السابقة؟

StackOverflow https://stackoverflow.com/questions/2174068

سؤال

تلتزم طريقة ASP.NET LINQ Submitchanges بتغييرات لجميع تعديلات قاعدة البيانات السابقة منذ آخر مرة تم فيها استدعاءها.

لدي حالة حيث أفعل شيئًا مثل ما يلي:

ClassX x = new Abc.Linq.ClassX();
DataContext.InsertOnSubmit(x);

ClassY y = new Abc.Linq.ClassXY();
DataContext.InsertOnSubmit(y);

DataContext.SubmitChanges();//x and y are committed to the database

أود إدخال Y ولكن ليس x في السطر أعلاه. ثم أود إدراج X مع مكالمة أخرى إلى submitchanges () في وقت لاحق. لا بد لي من تنفيذ الرمز بالترتيب المعروض.

هل هذا ممكن؟ أم يجب أن أتصل بشيء آخر غير Submitchanges ()؟

هل كانت مفيدة؟

المحلول

أود استخدام DataContexts منفصلة لهذا. DataContext هو ببساطة غلاف للوصول إلى البيانات ، ومجموعة من التغييرات المعلقة. إنه لا يدعم الالتزامات الجزئية لمستكشنها. insertonsubmit يفعل ما تقوله - هل هناك سبب تحتاج إلى الاتصال بذلك قبل أن تريد بالفعل تقديمه؟ ربما إذا قمت بتوضيح المشكلة التي تقلقك في ترتيب التنفيذ هذا ، فيمكننا توفير حل أفضل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top