سؤال

أنا بالتأكيد بحاجة إلى استخدام الأولمبية الدولية حاوية فصل تبعيات في أي وقت مضى تزداد تعقيدا النظام من خدمات المؤسسة.المشكلة أواجهها هي واحدة ذات التكوين (أ.ك.أ.التسجيل).لدينا حاليا 4 بيئات مختلفة -- التنمية والإنتاج في بين.هذه البيئات العديد من التكوينات التي تختلف قليلا من بيئة إلى بيئة ؛ ولكن في جميع الحالات ، أنا حاليا أفكر, والتبعيات بين مكونات لا تختلف من بيئة إلى بيئة ، على الرغم من أنني قد نسيت شيئا و/أو لا يمكن تغيير.

لذا ، فإن السؤال الجوهري هو هل من تجربة مماثلة باستخدام IoC الإطار ؟ أو أي شخص يمكن أن يوصي إطار واحد على أخرى من شأنها أن توفر مرونة التسجيل يكون من خلال بعض النوع من الاتفاقية أو تبسيط التكوين المعلومات ؟ وأود أن يكون لا يزال قادرا على الاستفادة من بطلاقة واجهة أو أنا عالقة مع XML -- أود أن تجنب XML-الجحيم.

تحرير: هذا هو .صافي البيئة و لقد كنت أبحث في وندسور ، Ninject و Autofac.يبدو أن كل شيء الآن دعم كل أساليب التسجيل (بطلاقة و XML) ، على الرغم من Autofac دعم تعبيرات لامدا يبدو أن تكون مختلفة قليلا عن الآخرين.أي شخص استخدام هذا في مماثلة متعددة النشر البيئة ؟

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

المحلول

يمكنني استخدام Ninject.أنا أحب حقيقة أن لا تضطر إلى استخدام Xml لتكوين التبعيات.أنا يمكن أن مجرد استخدام مستقيم التعليمات البرمجية C#.هناك طرق متعددة من يفعل ذلك أيضا.أنا أعرف مكتبات أخرى لديها هذه الميزة ، ولكن Ninject تقدم سريع مثيل ، هو خفيفة الوزن جدا ، فقد المشروط ملزم يدعم الاتفاق الإطار ، وتدعم Silverlight 2.0.أود أيضا أن استخدام المجمع على أعلى من ذلك, في حال كنت لا تبديل الخروج عن إطار آخر في المستقبل.يجب عليك بالتأكيد محاولة Ninject عند اتخاذ قرار بشأن الإطار.

نصائح أخرى

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

لست متأكدا ما إذا كان سوف تناسب حالة معينة لم تذكر منصة ما كنت تعمل في ، بل لقد كان نجاحا كبيرا مع قلعة وندسور إطار اللجنة الأولمبية الدولية.التبعيات هي الإعداد في ملف التكوين (إنه .NET framework)

انظر Ayendes وحيد القرن العموم.انه يستخدم التجريد على الحاويات اللجنة الاولمبية الدولية.بحيث يمكنك التبديل حاويات وقتما تشاء.شيء مثل الحاويات.حل هناك دائما في كل حاوية.

يمكنني استخدام Structuremap للقيام بهذا العمل القذر فقد بطلاقة واجهة XML الأشياء و هي قوية بما فيه الكفاية بالنسبة لمعظم الأشياء التي تريد القيام به.كل واحد له نفسه إيجابيات وسلبيات حتى القليل من التجريد بحيث يمكنك بسهولة التبديل (أنت لا تعرف أبدا متى ستكون حول) هو جيد.لبقية أعتقد Spring.Net قلعة وندسور ، Ninject و StructureMap ليست بعيدة عن بعضها البعض بعد الآن.

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