C# TinyIOC简单用法

先添加一个接口

namespace IContract
{
   public interface IBase
    {
        void ShowMessage();
    }
}

再添加两个实现类

namespace Contract
{
    public class AContract : IBase
    {
 

        public void ShowMessage()
        {
            MessageBox.Show("A");
        }
    }
}
namespace Contract
{
    public class BContract : IBase
    {
        public void ShowMessage()
        {
            MessageBox.Show("B");
        }
    }
}

namespace
TinyIOCTest { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { TinyIoCContainer _container = TinyIoCContainer.Current; public MainWindow() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { //_container.Register<IBase, AContract>(); _container.Register<AContract>(); _container.AutoRegister(); } private void Button_Click_1(object sender, RoutedEventArgs e) { _container.Register<IBase, BContract>("BaseType"); } private void Button_Click_2(object sender, RoutedEventArgs e) { _container.Resolve<IBase>().ShowMessage(); _container.Resolve<IBase>("BaseType").ShowMessage(); } } }

猜你喜欢

转载自www.cnblogs.com/czly/p/9273646.html
今日推荐