本文整理汇总了C#中ContainerBuilder.RegisterAdapter方法的典型用法代码示例。如果您正苦于以下问题:C# ContainerBuilder.RegisterAdapter方法的具体用法?C# ContainerBuilder.RegisterAdapter怎么用?C# ContainerBuilder.RegisterAdapter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ContainerBuilder
的用法示例。
在下文中一共展示了ContainerBuilder.RegisterAdapter方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnTopOfAnotherAdapter
public OnTopOfAnotherAdapter()
{
var builder = new ContainerBuilder();
builder.RegisterInstance(_from).WithMetadata(NameKey, Name);
builder.RegisterAdapter<Meta<Command>, ToolbarButton>(
cmd => new ToolbarButton(cmd.Value, (string)cmd.Metadata[NameKey]));
var container = builder.Build();
_to = container.Resolve<ToolbarButton>();
}
示例2: AdaptingTypeToType
public AdaptingTypeToType()
{
var builder = new ContainerBuilder();
foreach (var command in _commands)
builder.RegisterInstance(command);
builder.RegisterAdapter<Command, ToolbarButton>(cmd => new ToolbarButton(cmd))
.As<IToolbarButton>();
var container = builder.Build();
_toolbarButtons = container.Resolve<IEnumerable<IToolbarButton>>();
}
示例3: AdaptingTypeSeesKeysOfAdapteeType
public void AdaptingTypeSeesKeysOfAdapteeType()
{
var builder = new ContainerBuilder();
builder.RegisterType<Command>().Keyed<Command>("Command");
builder.RegisterType<AnotherCommand>().Keyed<AnotherCommand>("AnotherCommand");
builder.RegisterAdapter<Command, AnotherCommand>(c => new AnotherCommand());
var container = builder.Build();
var command = container.Resolve<IIndex<string, AnotherCommand>>()["Command"];
Assert.IsNotNull(command);
Assert.That(command, Is.InstanceOf<AnotherCommand>());
var anotherCommand = container.Resolve<IIndex<string, AnotherCommand>>()["AnotherCommand"];
Assert.IsNotNull(anotherCommand);
Assert.That(anotherCommand, Is.InstanceOf<AnotherCommand>());
}