Я разрабатываю приложение wpf с дизайном MVVM. В качестве фреймворка MVVM я использую Caliburn Micro. Служба у меня во внешней сборке, и она внедряется в представлениях моделей классов с MEF.
Проблема в обслуживании У меня много маленьких классов, я стараюсь уважать принцип SOLID.
[Export(typeof(IClassA)]
public class ClassA : IClassA
{}
[Export(typeof(IClassB)]
public class ClassB : IClassB
{}
[Export(typeof(IClassC)]
public class ClassC : IClassC
{}
//...
[Export(typeof(IClassK)]
public class ClassK : IClassK
{}
Количество классов составляет около 12-15.
Мне нужно использовать эти классы в классе модели представления. Поэтому я использую это:
public class MyViewModelClass
{
private interface IClassA _a;
private interface IClassB _b;
private interface IClassC _c;
//...
private interface IClassK _k;
[ImportingConstructor]
public MyViewModelClass(IClassA a, IClassB b, IClass c, ..., IClassK k)
{
_a=a; _b=b; _c=c; ... _k=k
}
}
Не думаю, что этот путь верен. Или существует что-то элегантное, простое. Спасибо за ваше мнение и советы.