سؤال

لقد تم استخدام MVC الأطر لفترة قصيرة والآن أنا حقا أحب كيف المخاوف فصل.لقد حصلت في هذه العادة السيئة من السماح تحكم لا بأس به من العمل.لذلك أنا حقا تبحث عن بعض النصائح.

عندما بدأت لأول مرة باستخدام MVC أنا في كثير من الأحيان قد تحكم به التلاعب على النماذج بعد بيانات العمل تم القيام به.كنت أعرف هذا كان سيئا حتى انتقل هذا العمل في النماذج.ومع ذلك أنا لست سعيدا مع ذلك كما أريد نماذج جدا تعلم.

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

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

  1. وحدة تحكم يمكن استدعاء مستودع مباشرة إذا كان أي تلاعب يجب القيام به على البيانات مثل طبقة الخدمة لا تحتاج إلى الحصول على المشاركة
  2. مرة واحدة في أي عمل يجب القيام به البيانات (منطق الأعمال) هذا يجب أن يكون في خدمة طبقة تحكم جعل مكالمة بسيطة إلى طبقة الخدمة عند الاقتضاء
  3. مرة واحدة في الخدمة القيام به هو منطق الأعمال ومن ثم استخدام مستودع عند الضرورة (إذا كانت البيانات يجب أن يكون استمرت).
  4. نماذج من الناحية المثالية يجب أن تبقى العجاف ، من الناحية المثالية actings أكثر من DTOs
  5. التحقق من صحة البيانات في النماذج (باستخدام القطار الكهربائي التحقق منها).أقدر حتى لا أحد يحب الملوثة نماذجها مع الكثير من الصفات ، ولكن أن يتم مناقشة مختلفة.أحب الاستفادة من المونوريل هو التحقق من صحة السمات التلقائي التحقق من صحة مسج في واجهة المستخدم.

أنا أحاول أن تتحول كل مدونة حول المسؤولية واحدة المبدأ ، ومن ثم محاولة فرز بلدي ممارسات الترميز.

شكرا

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

المحلول

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

  1. لا شيء خاطئ مع استدعاء المخزون من وحدة تحكم.فقط تأكد من أن وحدة تحكم لا تحتوي على منطق الأعمال.
  2. تهتم الخدمة (بعض) منطق الأعمال و يستخدم خدمات أخرى للقيام بذلك.مستودع هو نوع من الخدمة, لا يوجد شيء خاطئ مع الدعوة من الخدمة.
  3. نموذج يجب أن تحتوي على منطق الأعمال, في الواقع يجب عليك دائما محاولة لوضعها في النموذج الأول.إذا كنت بحاجة إلى البيانات الخارجية لأداء تلك الأعمال المنطق (من نموذج آخر أو من مستودع) ثم يجب إنشاء خدمة.
  4. لا شيء خاطئ مع التحقق من الصحة في النماذج.باستخدام سمات أم لا هي مسألة ذوق (إذا كنت ترغب في ذلك ثم إنه جيد).نقل التحقق من صحة خارج النموذج إذا كان يحصل معقدة جدا (إنشاء الخارجية مجموعة من القواعد).

أهم ما يشعر الحق (هذا هو عادة الجواب الصحيح).

نصائح أخرى

هذا الفيديو يعطي نظرة كبيرة في كيفية تنظيم asp.net MVC حل ومعالجة فصل من المخاوف ، وتحسين قابلية الاختبار.نأمل أنها سوف تساعد شخص آخر أيضا.تعلمت بعض الأشياء الجيدة من ذلك.

إيان كوبر فقط كتابة بلوق وظيفة تسمى الدهون تحكم في هذا الموضوع فقط.

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