先添加一个接口
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();
}
}
}