سؤال

بعد القراءة عن إطار السين، لدي بعض الأسئلة:

1] ما هي أفضل طريقة لنقل الكيانات بين المستوى؟ أ هل يجب علي إنشاء DTOS أخف وزنا لهذا أو يمكنني تسلسله بفعالية على Entitiy ونقله؟

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

2] هل هناك أي فصول بناء نقطة الى الخلف من DTOS؟

شكرا.

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

المحلول

الإجابة على 1: أفضل طريقة لنقل الكيانات بين المستوى يعتمد على طلبك. يمكنك إنشاء DTOS والتي هي الحل المفضل لدي على الرغم من أن الكيانات المسلقة هي المستطاع ولكن عليك أن تتأكد من أن هذا هو في الواقع ما تريد القيام به وتذكر:

"عند استخدام التسلسل الثنائي التسلسل واستسلام بيانات البيانات WCF، إذا كان الكائن الذي يتم تسلسله كائنات ذات صلة في الرسم البياني للكائنات، فإن هذه الكائنات غير متسلسلة أيضا. تسلسل XML لا يسقط الكائنات ذات الصلة."

يعمل Automapper عن طريق تعيين خصائص تعيين تلقائيا بدلا من الاضطرار إلى كتابة جميع بيانات السباكة مثل:

dto.id = entity.id;
...
all other dto assignment operations

سترى قريبا مقدار رمز السباكة إضافة حتى سيوفر الكثير من هذا = أن خطوط التعليمات البرمجية خاصة إذا كنت قد عرضت الفئات وكذلك كائنات DTO ووجدت هذا مزودا ما أردت تماما. بقدر ما أدرك أن Automapper سيعمل فقط إذا كانت الأسماء هي نفسها بين الكيان و DTO ويمكنها تعيينها بين أنواع هذه الخصائص. يمكنك إضافة قواعد رسم الخرائط للتحويل بين الأنواع رغم أن DTO والكيان تخزن البيانات في نوع مختلف.

الإجابة على 2: إذا قمت بتحويل الكائنات إلى DTOS وتعديلها في مستويات أعلى كيف تخطط لإنقاذها مرة أخرى من خلال إطار الكيان؟ عادة ما تقوم فقط بتحويل هذه الكيانات ذات الصلة / إنشاء كيان جديد وتقديم هذه التغييرات.

نصائح أخرى

تريد أن تنظر في خدمات ريا. وبعد انها بنيت لهذا فقط.

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