هل هي ممارسة جيدة لتنفيذ المعاملات في طبقة الأعمال

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

  •  29-10-2019
  •  | 
  •  

سؤال

نحن ندرس تنفيذ المعاملات في تطبيق الويب ASP.NET الخاص بنا.إنها بنية ثلاثية الطبقات. نحن نتصل بخدمات الويب من طبقة الأعمال ونخطط لتنفيذ المعاملات في خدمة الويب من خلال تعيين سمة TransactionOPtion.

عند القدوم إلى طبقة البيانات ، هل هو خيار جيد لتنفيذ المعاملات في طبقة البيانات أم ينبغي أن أسميها من طبقة الأعمال. إذا بدأت المعاملة من طبقة الأعمال ، أعتقد أننا سنحتاج إلى تمرير سياق المعاملة إلى Datalayer وهو أمر غير منطقي بالنسبة لي لأنني أستطيع بدء المعاملة في Datalyer نفسه.أنا لا أتحدث إلى قواعد بيانات مختلفة ولا أمتلك مكالمات أسلوب متعددة من BusinessLayer.لذلك لا أعتقد أننا بحاجة إلى معاملات في طبقة الأعمال في هذا السياق. هل يمكنك التحقق من فهمي / تصحيحه؟

شكرا

سوني

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

المحلول

إذا كان لديك مكالمات متعددة إلى طبقة البيانات من مكالمة واحدة إلى طبقة الأعمال ، فلا أعتقد أنه يمكنك تجنب رفع نطاق المعاملة إلى طبقة الأعمال.

إذا كنت تقيد نفسك باستدعاء طبقة بيانات واحدة لكل مكالمة طبقة عمل ، فلن تحتاج بالطبع إلى معاملات على مستوى طبقة الأعمال ، ويمكنك الاحتفاظ بها فقط في طبقة البيانات الخاصة بك.

نصائح أخرى

لن يسهل تتبع المعاملات.
مسؤولية فتح وإغلاق المعاملات ستنتقل إلى طبقة الأعمال.
-> سيكون الاقتران بين الطبقات أكثر بكثير مما تتوقعه عند استدعاء خدمة الويب.

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