استدعاء جالبة دون تعيينه إلى أي شيء (تحميل كسول)

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

  •  22-08-2019
  •  | 
  •  

سؤال

ولدي DTO التي يمكن تحميلها بالكامل أو كسول تحميلها باستخدام كسلان تحميل نمط. كيف يتم تحميل ذلك يعتمد على ما يحتاج تطبيق فليكس. ومع ذلك، سيتم إرسال هذه DTO إلى تطبيق فليكس (فرنك سويسري). عادة، وجمع على سبيل المثال، لن يتم تحميلها عند استدعاء. في حالتي ومع ذلك، سوف يطلق على مجموعة فقط في فليكس، وبالتالي تنفيذ بلدي على الجانب الصافي من الواضح لا تعمل في هذه الحالة (إلا إذا فليكس ستفعل مكالمة الخادم ... شيء أود أن تجنب).

في لجالبة للجمع، يتم استرداد البيانات من قاعدة البيانات. إذا كنت سوف تعمل مع صفحات ASP.NET، فإنه يعمل، ولكن ليس إذا تم إرسال DTO لفليكس.

وكيف تتعاملون مع ذلك؟ أنا يمكن استدعاء جالبة قبل إرسال DTO لفليكس، ولكن يبدو مروعا ... + استدعاء جالبة يمكن أن يتم إلا إذا تم تعيين إلى شيء (والمتغير المحلي الذي سيعقد جمع لن يستخدم أبدا ... ).

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

المحلول

وأنا ربما إدخال طريقة Finalize لفئة وربما طريقة تمديد FinalizeAll لمجموعات مختلفة من الطبقة. فإن هذا الأسلوب ببساطة من خلال الذهاب ومرجع كل حاصل على الممتلكات العامة من فئة لضمان أن يتم تحميلها. هل استدعاء Finalize (أو FinalizeAll) قبل إرسال الكائن (ق) إلى التطبيق المرن الخاص بك. قد تحتاج حتى لجعل هذا واجهة بحيث يمكنك اختبار والحاجة إلى وضع اللمسات الأخيرة قبل نقل الأشياء الخاصة بك واستدعاء الأسلوب على أساس الاختبار للواجهة بدلا من التحقق من كل فئة على حدة.

ملحوظة: وضع اللمسات الأخيرة ليست سوى الاسم الأول الذي برزت في الاعتبار. قد يكون هناك (ربما هو) اسم أفضل لذلك.

نصائح أخرى

يمكنك إدخال طريقة لتحميل المعالين - loadDependencies - ينبغي أن تأخذ جميع تحميل كسول لكائن DTO قبل إرسالها عبر السلك (لفليكس). يمكنك مجردة هذه الطريقة إلى واجهة لتبسيط هذه العملية عبر DTOs مختلفة. لا يوجد شيء ضد استخدام حاصل على الطريقة التي وصفها داخل هذا الأسلوب.

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