البرمجة

تحديثات Automapper وAutofac: إدارة الخرائط بكفاءة في .Net

في الآونة الأخيرة، وجدت نفسك تواجه تحديات في تحديث تكوين Automapper وAutofac في تطبيق .Net الخاص بك. مع إصدار Automapper الأحدث (4.2)، تغيرت واجهة البرمجة التطبيقية وبالتالي واجهت صعوبة في ترجمة التكوين السابق إلى الواجهة الجديدة. تعرض هذه التغييرات تحدٍ إضافي على النصوص البرمجية التي تعتمد على Autofac لإدارة حقن الإعتماد.

سابقًا، كنت تقوم بتكوين Automapper وAutofac باستخدام مثل هذا الكود:

csharp
builder.RegisterAssemblyTypes(typeof(OneOfMyMappingProfiles).Assembly) .Where(t => t.IsSubclassOf(typeof(Profile))) .As(); builder.Register(ctx => new ConfigurationStore(new TypeMapFactory(), MapperRegistry.Mappers)) .AsImplementedInterfaces() .SingleInstance() .OnActivating(x => { foreach (var profile in x.Context.Resolve>()) { x.Instance.AddProfile(profile); } }); builder.RegisterType() .As().SingleInstance();

لكن مع التحديث الأخير ل Automapper، تغيرت الطريقة التي يتم بها تكوين المابينج. وفقًا للتوثيق الجديد، يمكنك تكوين Automapper مع Autofac كما يلي:

csharp
var profiles = from t in typeof(AutoMapperRegistry).Assembly.GetTypes() where typeof(Profile).IsAssignableFrom(t) select (Profile)Activator.CreateInstance(t); var config = new MapperConfiguration(cfg => { foreach (var profile in profiles) { cfg.AddProfile(profile); } }); builder.RegisterInstance(config).As(); builder.Register(ctx => config.CreateMapper(ctx.Resolve)).As();

يتم هنا استخدام builder.RegisterInstance(config).As() لتسجيل MapperConfiguration في حاوية Autofac، ومن ثم builder.Register(ctx => config.CreateMapper(ctx.Resolve)).As() يتم استخدامها لتكوين حقن الاعتماد ل IMapper.

هذا التغيير يعكس التحديات التي قد تواجهها عند تحديث الحزم البرمجية، ومع تفهمك للتغييرات اللازمة، يمكنك الآن مواصلة استخدام Automapper وAutofac بنجاح في تطبيق .Net الخاص بك.

المزيد من المعلومات

تجلب هذه التحديثات في Automapper وAutofac تحسينات وتغييرات في الطريقة التي يتم بها تكوين وإدارة الخرائط (Mappings) وحقن الاعتماد. من خلال فهم القطع المختلفة في التعديلات، يمكن أن تسهم في تعزيز كفاءة التكامل بين هاتين الحزمتين القوية.

إحدى النقاط الرئيسية التي يجب أخذها في اعتبارك هي استخدام MapperConfiguration لتحديد وتكوين الخرائط. يمكنك الآن تكوين الخرائط وتكوين Automapper بشكل أكثر وضوحًا وفاعلية باستخدام MapperConfiguration. يُظهر الشيفرة البرمجية الجديدة كيف يمكن إنشاء MapperConfiguration واستخدامها في تسجيل Autofac.

كما يجدر بك مراعاة التحول الشامل في الطريقة التي يتم بها حقن الاعتماد باستخدام Autofac. في المثال الجديد، تتمثل الخطوة الرئيسية في استخدام builder.RegisterInstance(config).As() لتسجيل MapperConfiguration كمفتاح للاستفادة منها في بناء IMapper. هذا يعكس التوجه نحو توفير مزيد من المرونة والوضوح في عمليات تكوين Automapper.

التحولات في واجهة برمجة التطبيق (API) تعكس استمرار الابتكار والتطور في عالم البرمجة، وتتيح للمطورين تحسين تجاربهم وتبسيط عملياتهم. في هذا السياق، تحديثات Automapper تسهم في تبسيط عمليات التكوين وتوفير ميزات أكثر قوة ومرونة.

بمواكبتك لآخر التحديثات والتغييرات، يمكنك الاستمرار في الاستفادة من فعالية Automapper وAutofac في تطبيق .Net الخاص بك، مما يعزز القدرة على إدارة وتكوين الخرائط بشكل أفضل وفعال.

زر الذهاب إلى الأعلى