本文整理汇总了C#中Autofac.ContainerBuilder.RegisterZombus方法的典型用法代码示例。如果您正苦于以下问题:C# ContainerBuilder.RegisterZombus方法的具体用法?C# ContainerBuilder.RegisterZombus怎么用?C# ContainerBuilder.RegisterZombus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Autofac.ContainerBuilder
的用法示例。
在下文中一共展示了ContainerBuilder.RegisterZombus方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TheyShouldBeResolvable
public void TheyShouldBeResolvable()
{
var interceptorTypes = new[] {typeof (DummyInterceptor)};
var builder = new ContainerBuilder();
var typeProvider = Substitute.For<ITypeProvider>();
typeProvider.InterceptorTypes.Returns(interceptorTypes);
builder.RegisterZombus(typeProvider);
using (var container = builder.Build())
using (var dependencyResolver = container.Resolve<IDependencyResolver>())
using (var scope = dependencyResolver.CreateChildScope())
{
var interceptorSetting = new GlobalOutboundInterceptorTypesSetting
{
Value = interceptorTypes
};
var outboundInterceptorFactory = new OutboundInterceptorFactory(interceptorSetting,
new PropertyInjector(Substitute.For<IClock>(),
Substitute.For<IDispatchContextManager>(),
Substitute.For<ILargeMessageBodyStore>()));
var dummyBrokeredMessage = new BrokeredMessage();
var interceptors = outboundInterceptorFactory.CreateInterceptors(scope, dummyBrokeredMessage);
interceptors.Count().ShouldBe(1);
}
}
示例2: NothingShouldGoBang
public async Task NothingShouldGoBang()
{
var typeProvider = new AssemblyScanningTypeProvider(GetType().Assembly);
var builder = new ContainerBuilder();
builder.RegisterZombus(typeProvider);
using (builder.Build()) { }
}
示例3: NothingShouldGoBang
public void NothingShouldGoBang()
{
var builder = new ContainerBuilder();
var typeProvider = new AssemblyScanningTypeProvider();
builder.RegisterType<ConsoleLogger>()
.As<IZombusLogger>()
.SingleInstance();
builder.RegisterZombus(typeProvider);
var largeMessageBodyTempPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Guid.NewGuid().ToString());
builder.Register(c => new FileSystemStorageBuilder().Configure()
.WithStorageDirectory(largeMessageBodyTempPath)
.WithLogger(c.Resolve<IZombusLogger>())
.Build())
.As<ILargeMessageBodyStore>()
.SingleInstance();
builder.Register(c => new BusBuilder().Configure()
.WithNames("IntegrationTestHarness", Environment.MachineName)
.WithConnectionString(
@"Endpoint=sb://shouldnotexist.example.com/;SharedAccessKeyName=IntegrationTestHarness;SharedAccessKey=borkborkbork=")
.WithLargeMessageStorage(sc => sc.WithLargeMessageBodyStore(c.Resolve<ILargeMessageBodyStore>())
.WithMaxSmallMessageSize(50*1024)
.WithMaxLargeMessageSize(1024*1024))
.WithTypesFrom(typeProvider)
.WithDefaultTimeout(TimeSpan.FromSeconds(10))
.WithLogger(c.Resolve<IZombusLogger>())
.Build())
.As<IBus>()
.SingleInstance();
using (var container = builder.Build())
{
container.Resolve<IBus>();
}
}
示例4: Create
public IDependencyResolver Create(ITypeProvider typeProvider)
{
var builder = new ContainerBuilder();
builder.RegisterZombus(typeProvider);
return builder.Build().Resolve<IDependencyResolver>();
}