سؤال

أواجه مشكلة في الحصول على MEF لإرضاء الاستيراد ويمكن استخدام بعض المساعدة.

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

لدي تطبيق WPF المستهلك .NET 4.5 المكتبات الفئة ومكتبات فئة محمولة (استهداف .NET 4.5 وتطبيقات متجر Windows 8). ليس لدي حتى الآن تطبيق متجر Windows 8، ولكن من المخطط (وبالتالي الصداع). أنا أستخدم MEF 2 أنني سحبت من Nuget مؤخرا:

giveacodicetagpre.

أعتقد أن ما أبحث عنه هو بعض النصائح حول كيفية تصحيح هذا، حيث لن أكون قادرا على نشر الرمز الفعلي. معظم النصائح عبر الإنترنت يمكنني العثور عليها حول كيفية تصحيح الأخطاء لا يعمل مع MEF 2، على الأقل ليس هذا الإصدار المتوافق مع PCL. فيما يلي إصدار مبسط ولكن مرة أخرى، يعمل هذا الإصدار.

giveacodicetagpre.

اسم المستورد يحصل على القيمة "تصديرها". في كود الإنتاجي أحصل على تكوينه في الأعمار مع التفاصيل:

معلومات إضافية: مفقود الاعتماد "UserInformation" على 'MainwindowViewModel'.

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

المحلول

وجدت السبب الجذري الخاص بي.

كانت تجميعاتي .NET 4.5 تحصل على MEF باستخدام:

giveacodicetagpre.

بينما كانت تجمعات PCL الخاصة بي تستخدم:

giveacodicetagpre.

تحديث كل شيء لنظام الكومبيوتر يحل المشكلة.

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