本文整理汇总了C#中EndpointConfiguration.EnableFeature方法的典型用法代码示例。如果您正苦于以下问题:C# EndpointConfiguration.EnableFeature方法的具体用法?C# EndpointConfiguration.EnableFeature怎么用?C# EndpointConfiguration.EnableFeature使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EndpointConfiguration
的用法示例。
在下文中一共展示了EndpointConfiguration.EnableFeature方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EndpointConfiguration
async Task EndpointConfiguration(EndpointConfiguration endpointConfiguration)
{
#region EnableDisableFeatures
// enable delayed delivery feature since SLR relies on it
endpointConfiguration.EnableFeature<DelayedDeliveryFeature>();
// this is not required if the feature uses EnableByDefault()
endpointConfiguration.EnableFeature<SecondLevelRetries>();
// we can disable features we won't use
endpointConfiguration.DisableFeature<Sagas>();
IStartableEndpoint endpoint = await Endpoint.Create(endpointConfiguration);
#endregion
}
示例2: AsyncMain
static async Task AsyncMain()
{
LogManager.Use<DefaultFactory>().Level(LogLevel.Error);
#region Program
Logger.WriteLine("Starting configuration");
EndpointConfiguration endpointConfiguration = new EndpointConfiguration();
endpointConfiguration.EndpointName("Samples.StartupShutdown");
endpointConfiguration.EnableInstallers();
endpointConfiguration.EnableFeature<MyFeature>();
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.SendFailedMessagesTo("error");
Logger.WriteLine("Calling Bus.Create");
IEndpointInstance endpoint = await Endpoint.Start(endpointConfiguration);
try
{
//simulate some bus activity
Thread.Sleep(500);
Logger.WriteLine("Bus is processing messages");
}
finally
{
Logger.WriteLine("Calling IEndpointInstance.Stop");
await endpoint.Stop();
}
Logger.WriteLine("Finished");
#endregion
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
示例3: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.StartupShutdown";
LogManager.Use<DefaultFactory>().Level(LogLevel.Error);
#region Program
Logger.WriteLine("Starting configuration");
var endpointConfiguration = new EndpointConfiguration("Samples.StartupShutdown");
endpointConfiguration.EnableInstallers();
endpointConfiguration.EnableFeature<MyFeature>();
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.SendFailedMessagesTo("error");
Logger.WriteLine("Calling Endpoint.Start");
var endpointInstance = await Endpoint.Start(endpointConfiguration)
.ConfigureAwait(false);
try
{
//simulate some activity
await Task.Delay(500)
.ConfigureAwait(false);
Logger.WriteLine("Endpoint is processing messages");
}
finally
{
Logger.WriteLine("Calling IEndpointInstance.Stop");
await endpointInstance.Stop()
.ConfigureAwait(false);
}
Logger.WriteLine("Finished");
#endregion
Console.WriteLine($"Logged information to {Logger.OutputFilePath}");
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
示例4: The_default_configuration_source_should_be_default
public async Task The_default_configuration_source_should_be_default()
{
var config = new EndpointConfiguration("myendpoint");
config.SendOnly();
config.TypesToScanInternal(new[] { typeof(ConfigSectionValidatorFeature) });
config.DisableFeature<MessageDrivenSubscriptions>();
config.EnableFeature<ConfigSectionValidatorFeature>();
var endpoint = await Endpoint.Start(config);
await endpoint.Stop();
}
示例5: Usage
Usage(EndpointConfiguration endpointConfiguration, IEndpointInstance endpoint)
{
#region GatewayConfiguration
endpointConfiguration.EnableFeature<Gateway>();
#endregion
#region SendToSites
endpoint.SendToSites(new[] { "SiteA", "SiteB" }, new MyMessage());
#endregion
}
示例6: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.Gateway.Headquarters";
var endpointConfiguration = new EndpointConfiguration("Samples.Gateway.Headquarters");
endpointConfiguration.EnableInstallers();
endpointConfiguration.EnableFeature<Gateway>();
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.SendFailedMessagesTo("error");
var endpointInstance = await Endpoint.Start(endpointConfiguration)
.ConfigureAwait(false);
try
{
Console.WriteLine("Press 'Enter' to send a message to RemoteSite which will reply.");
Console.WriteLine("Press any other key to exit");
while (true)
{
var key = Console.ReadKey();
Console.WriteLine();
if (key.Key != ConsoleKey.Enter)
{
return;
}
string[] siteKeys =
{
"RemoteSite"
};
var priceUpdated = new PriceUpdated
{
ProductId = 2,
NewPrice = 100.0,
ValidFrom = DateTime.Today,
};
await endpointInstance.SendToSites(siteKeys, priceUpdated)
.ConfigureAwait(false);
Console.WriteLine("Message sent, check the output in RemoteSite");
}
}
finally
{
await endpointInstance.Stop()
.ConfigureAwait(false);
}
}
示例7: Usage
public Usage()
{
#region GatewayConfiguration
EndpointConfiguration configuration = new EndpointConfiguration();
configuration.EnableFeature<Gateway>();
#endregion
IEndpointInstance endpoint = null;
#region SendToSites
endpoint.SendToSites(new[] { "SiteA", "SiteB" }, new MyMessage());
#endregion
}
示例8: AsyncMain
static async Task AsyncMain()
{
Console.Title = "Samples.Gateway.RemoteSite";
EndpointConfiguration endpointConfiguration = new EndpointConfiguration("Samples.Gateway.RemoteSite");
endpointConfiguration.EnableInstallers();
endpointConfiguration.EnableFeature<Gateway>();
endpointConfiguration.UsePersistence<InMemoryPersistence>();
endpointConfiguration.SendFailedMessagesTo("error");
IEndpointInstance endpoint = await Endpoint.Start(endpointConfiguration);
try
{
Console.WriteLine("\r\nPress any key to stop program\r\n");
Console.ReadKey();
}
finally
{
await endpoint.Stop();
}
}
示例9: RunBus
static async Task RunBus()
{
IEndpointInstance endpoint = null;
try
{
var configuration = new EndpointConfiguration("NServiceBus.MessageRouting.RoutingSlips.Samples.StepA");
configuration.UseTransport<MsmqTransport>();
configuration.UsePersistence<InMemoryPersistence>();
configuration.EnableFeature<RoutingSlips>();
configuration.SendFailedMessagesTo("error");
endpoint = await Endpoint.Start(configuration);
Console.ReadLine();
}
finally
{
if (endpoint != null)
await endpoint.Stop();
}
}
示例10: InitBus
private static async Task<IEndpointInstance> InitBus()
{
NServiceBus.Logging.LogManager.Use<NLogFactory>();
var endpoint = ConfigurationManager.AppSettings["endpoint"];
if (string.IsNullOrEmpty(endpoint))
endpoint = "domain";
var config = new EndpointConfiguration(endpoint);
config.MakeInstanceUniquelyAddressable(Defaults.Instance.ToString());
Logger.Info("Initializing Service Bus");
config.LicensePath(ConfigurationManager.AppSettings["license"]);
config.EnableInstallers();
config.LimitMessageProcessingConcurrencyTo(10);
config.UseTransport<RabbitMQTransport>()
//.CallbackReceiverMaxConcurrency(4)
//.UseDirectRoutingTopology()
.ConnectionStringName("RabbitMq")
.PrefetchMultiplier(5)
.TimeToWaitBeforeTriggeringCircuitBreaker(TimeSpan.FromSeconds(30));
config.UseSerialization<NewtonsoftSerializer>();
config.UsePersistence<InMemoryPersistence>();
config.UseContainer<StructureMapBuilder>(c => c.ExistingContainer(_container));
config.SetReadSize(100);
config.ShouldCacheEntities(true);
config.SlowAlertThreshold(1000);
config.SetStreamGenerator((type, bucket, streamid) =>
{
var t = type.FullName.Replace("Pulse.Domain.", "");
return $"{bucket}.[{t}].{streamid}";
});
if (Logger.IsDebugEnabled)
{
config.EnableSlowAlerts(true);
////config.EnableCriticalTimePerformanceCounter();
config.Pipeline.Register(
behavior: typeof(LogIncomingMessageBehavior),
description: "Logs incoming messages"
);
}
config.UseEventStoreDelayedChannel(true);
config.MaxConflictResolves(2);
config.EnableFeature<Aggregates.Domain>();
config.EnableFeature<Aggregates.GetEventStore>();
config.Recoverability().ConfigureForAggregates(5, 3);
//config.EnableFeature<RoutedFeature>();
config.DisableFeature<Sagas>();
return await Endpoint.Start(config).ConfigureAwait(false);
}