本文整理汇总了C#中EndpointConfiguration.RegisterComponents方法的典型用法代码示例。如果您正苦于以下问题:C# EndpointConfiguration.RegisterComponents方法的具体用法?C# EndpointConfiguration.RegisterComponents怎么用?C# EndpointConfiguration.RegisterComponents使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EndpointConfiguration
的用法示例。
在下文中一共展示了EndpointConfiguration.RegisterComponents方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Usage
Usage(EndpointConfiguration endpointConfiguration)
{
#region UsingMessageBodyEncryptor
endpointConfiguration.RegisterComponents(c => c.ConfigureComponent<MessageEncryptor>(DependencyLifecycle.InstancePerCall));
#endregion
}
示例2: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.MessageMutators";
var endpointConfiguration = new EndpointConfiguration("Samples.MessageMutators");
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.UseSerialization<JsonSerializer>();
endpointConfiguration.SendFailedMessagesTo("error");
#region ComponentRegistartion
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<ValidationMessageMutator>(DependencyLifecycle.InstancePerCall);
components.ConfigureComponent<TransportMessageCompressionMutator>(DependencyLifecycle.InstancePerCall);
});
#endregion
var endpointInstance = await Endpoint.Start(endpointConfiguration)
.ConfigureAwait(false);
try
{
await Runner.Run(endpointInstance)
.ConfigureAwait(false);
}
finally
{
await endpointInstance.Stop()
.ConfigureAwait(false);
}
}
示例3: Simple
public void Simple()
{
#region MutatorRegistration
EndpointConfiguration configuration = new EndpointConfiguration();
configuration.RegisterComponents(c => c.ConfigureComponent<MyMutator>(DependencyLifecycle.InstancePerCall));
#endregion
}
示例4: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.UsernameHeader.Endpoint1";
EndpointConfiguration endpointConfiguration = new EndpointConfiguration("Samples.UsernameHeader.Endpoint1");
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.UseSerialization<JsonSerializer>();
endpointConfiguration.SendFailedMessagesTo("error");
#region ComponentRegistartion
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<UsernameMutator>(DependencyLifecycle.InstancePerCall);
});
#endregion
IEndpointInstance endpoint = await Endpoint.Start(endpointConfiguration);
try
{
#region SendMessage
Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity("FakeUser"), new string[0]);
await endpoint.Send("Samples.UsernameHeader.Endpoint2", new MyMessage());
#endregion
Console.WriteLine("Message sent. Press any key to exit");
Console.ReadKey();
}
finally
{
await endpoint.Stop();
}
}
示例5: GetConfiguration
public Task<EndpointConfiguration> GetConfiguration(RunDescriptor runDescriptor, EndpointCustomizationConfiguration endpointConfiguration, IConfigurationSource configSource, Action<EndpointConfiguration> configurationBuilderCustomization)
{
var types = GetTypesScopedByTestClass(endpointConfiguration);
typesToInclude.AddRange(types);
var builder = new EndpointConfiguration(endpointConfiguration.EndpointName);
builder.TypesToIncludeInScan(typesToInclude);
builder.CustomConfigurationSource(configSource);
builder.EnableInstallers();
builder.DisableFeature<TimeoutManager>();
builder.Recoverability()
.Delayed(delayed => delayed.NumberOfRetries(0))
.Immediate(immediate => immediate.NumberOfRetries(0));
builder.RegisterComponents(r => { RegisterInheritanceHierarchyOfContextOnContainer(runDescriptor, r); });
builder.UsePersistence<InMemoryPersistence>();
configurationBuilderCustomization(builder);
return Task.FromResult(builder);
}
示例6: InstancePerUnitOfWorkRegistration
InstancePerUnitOfWorkRegistration(EndpointConfiguration endpointConfiguration)
{
#region InstancePerUnitOfWorkRegistration
endpointConfiguration.RegisterComponents(c => c.ConfigureComponent<MyUnitOfWork>(DependencyLifecycle.InstancePerCall));
#endregion
}
示例7: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.Serialization.ExternalJson";
#region config
var endpointConfiguration = new EndpointConfiguration("Samples.Serialization.ExternalJson");
var settings = new JsonSerializerSettings
{
Formatting = Formatting.Indented
};
endpointConfiguration.UseSerialization<NewtonsoftSerializer>()
.Settings(settings);
// register the mutator so the the message on the wire is written
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<MessageBodyWriter>(DependencyLifecycle.InstancePerCall);
});
#endregion
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.EnableInstallers();
endpointConfiguration.SendFailedMessagesTo("error");
var endpointInstance = await Endpoint.Start(endpointConfiguration)
.ConfigureAwait(false);
try
{
#region message
var message = new CreateOrder
{
OrderId = 9,
Date = DateTime.Now,
CustomerId = 12,
OrderItems = new List<OrderItem>
{
new OrderItem
{
ItemId = 6,
Quantity = 2
},
new OrderItem
{
ItemId = 5,
Quantity = 4
},
}
};
await endpointInstance.SendLocal(message)
.ConfigureAwait(false);
#endregion
Console.WriteLine("Order Sent");
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
finally
{
await endpointInstance.Stop()
.ConfigureAwait(false);
}
}
示例8: Simple
public void Simple()
{
#region UsingMessageBodyEncryptor
EndpointConfiguration configuration = new EndpointConfiguration();
configuration.RegisterComponents(c => c.ConfigureComponent<MessageEncryptor>(DependencyLifecycle.InstancePerCall));
#endregion
}
示例9: AsyncMain
static async Task AsyncMain()
{
#region config
EndpointConfiguration endpointConfiguration = new EndpointConfiguration();
endpointConfiguration.EndpointName("Samples.Serialization.ExternalBson");
SerializationExtentions<NewtonsoftSerializer> serialization =
endpointConfiguration.UseSerialization<NewtonsoftSerializer>();
serialization.ReaderCreator(stream => new BsonReader(stream));
serialization.WriterCreator(stream => new BsonWriter(stream));
// register the mutator so the the message on the wire is written
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<MessageBodyWriter>(DependencyLifecycle.InstancePerCall);
});
#endregion
endpointConfiguration.SendFailedMessagesTo("error");
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.EnableInstallers();
IEndpointInstance endpoint = await Endpoint.Start(endpointConfiguration);
try
{
#region message
CreateOrder message = new CreateOrder
{
OrderId = 9,
Date = DateTime.Now,
CustomerId = 12,
OrderItems = new List<OrderItem>
{
new OrderItem
{
ItemId = 6,
Quantity = 2
},
new OrderItem
{
ItemId = 5,
Quantity = 4
},
}
};
await endpoint.SendLocal(message);
#endregion
Console.WriteLine("Order Sent");
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
finally
{
await endpoint.Stop();
}
}
示例10: AsyncRun
static async Task AsyncRun()
{
Console.Title = "Samples.Headers";
var endpointConfiguration = new EndpointConfiguration("Samples.Headers");
endpointConfiguration.UseSerialization<JsonSerializer>();
endpointConfiguration.EnableInstallers();
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.SendFailedMessagesTo("error");
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<MutateIncomingMessages>(DependencyLifecycle.InstancePerCall);
components.ConfigureComponent<MutateIncomingTransportMessages>(DependencyLifecycle.InstancePerCall);
components.ConfigureComponent<MutateOutgoingMessages>(DependencyLifecycle.InstancePerCall);
components.ConfigureComponent<MutateOutgoingTransportMessages>(DependencyLifecycle.InstancePerCall);
});
#region global-all-outgoing
endpointConfiguration.AddHeaderToAllOutgoingMessages("AllOutgoing", "ValueAllOutgoing");
#endregion
var endpointInstance = await Endpoint.Start(endpointConfiguration)
.ConfigureAwait(false);
try
{
#region sending
var myMessage = new MyMessage();
await endpointInstance.SendLocal(myMessage)
.ConfigureAwait(false);
#endregion
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
finally
{
await endpointInstance.Stop()
.ConfigureAwait(false);
}
}
示例11: GetConfiguration
public async Task<EndpointConfiguration> GetConfiguration(RunDescriptor runDescriptor, EndpointCustomizationConfiguration endpointConfiguration, IConfigurationSource configSource, Action<EndpointConfiguration> configurationBuilderCustomization)
{
var settings = runDescriptor.Settings;
var types = GetTypesScopedByTestClass(endpointConfiguration);
typesToInclude.AddRange(types);
var builder = new EndpointConfiguration(endpointConfiguration.EndpointName);
builder.TypesToIncludeInScan(typesToInclude);
builder.CustomConfigurationSource(configSource);
builder.EnableInstallers();
builder.DisableFeature<TimeoutManager>();
builder.Recoverability()
.Delayed(delayed => delayed.NumberOfRetries(0))
.Immediate(immediate => immediate.NumberOfRetries(0));
await builder.DefineTransport(settings, endpointConfiguration.EndpointName).ConfigureAwait(false);
builder.DefineBuilder(settings);
builder.RegisterComponents(r => { RegisterInheritanceHierarchyOfContextOnContainer(runDescriptor, r); });
Type serializerType;
if (settings.TryGet("Serializer", out serializerType))
{
builder.UseSerialization((SerializationDefinition) Activator.CreateInstance(serializerType));
}
await builder.DefinePersistence(settings, endpointConfiguration.EndpointName).ConfigureAwait(false);
builder.GetSettings().SetDefault("ScaleOut.UseSingleBrokerQueue", true);
configurationBuilderCustomization(builder);
return builder;
}
示例12: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.Serialization.Jil";
#region config
EndpointConfiguration endpointConfiguration = new EndpointConfiguration("Samples.Serialization.Jil");
endpointConfiguration.UseSerialization<JilSerializer>()
.Options(
new Options(
prettyPrint: true,
excludeNulls: true,
includeInherited: true));
// register the mutator so the the message on the wire is written
endpointConfiguration.RegisterComponents(components =>
{
components.ConfigureComponent<MessageBodyWriter>(DependencyLifecycle.InstancePerCall);
});
#endregion
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.EnableInstallers();
endpointConfiguration.SendFailedMessagesTo("error");
IEndpointInstance endpoint = await Endpoint.Start(endpointConfiguration);
try
{
#region message
CreateOrder message = new CreateOrder
{
OrderId = 9,
Date = DateTime.Now,
CustomerId = 12,
OrderItems = new List<OrderItem>
{
new OrderItem
{
ItemId = 6,
Quantity = 2
},
new OrderItem
{
ItemId = 5,
Quantity = 4
},
}
};
await endpoint.SendLocal(message);
#endregion
Console.WriteLine("Order Sent");
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
finally
{
await endpoint.Stop();
}
}
示例13: MutatorRegistration
MutatorRegistration(EndpointConfiguration endpointConfiguration)
{
#region MutatorRegistration
endpointConfiguration.RegisterComponents(c => c.ConfigureComponent<MyMutator>(DependencyLifecycle.InstancePerCall));
#endregion
}
示例14: Customize
public void Customize(EndpointConfiguration endpointConfiguration)
{
endpointConfiguration.RegisterComponents(c => c.ConfigureComponent<DebugFlagMutator>(DependencyLifecycle.InstancePerCall));
}