zoukankan      html  css  js  c++  java
  • MvvMlight 中的 SimpleIoc

    SimpleIoc 是一个简单依赖注入容器;

    例:Mainviewmodel需要使用一个服务或类,假设我需要的person类

    首先将实现的服务注册到SimpleIOC,
    SimpleIoc.Default.Register(()=>new Person());
    然后把Mainviewmodel也注册到SimpleIOC,
    SimpleIoc.Default.Register();

    你可以通过ServiceLocator.Current.GetInstance();来获取一个Mainviewmodel的实例, 并且根据Mainviewmodel的构造参数在SimpleIOC中寻找匹配的对象,然后就可以使用了;

    public class ViewModelLocator
    {
    static ViewModelLocator()
    {
    ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);//设置默认的SimpleIOC
    SimpleIoc.Default.Register<IRssService, RssService>();//公共变量交换器

            SimpleIoc.Default.Register<MainWindowViewModel>();
        }
        public MainWindowViewModelMain
        {
            get
            {
                return ServiceLocator.Current.GetInstance<MainWindowViewModel>();//获取Mainviewmodel的实例
            }
        }
    }
    

    public MainViewModel(Person data)///Mainviewmodel的构造参数,匹配Person类
    {
    WelcomeTitle =data.Name;
    }

  • 相关阅读:
    《JS权威指南学习总结--6.6属性getter和setter》
    《JS权威指南学习总结--6.5枚举属性》
    django的模板系统
    django额外参数的传递和url命名
    python在图片上画矩形
    当爬虫遇到js加密
    php基础-7
    php基础-6
    php基础-5
    php基础-4
  • 原文地址:https://www.cnblogs.com/LCLBook/p/14414901.html
Copyright © 2011-2022 走看看