本文整理汇总了C#中Configure.DefiningEventsAs方法的典型用法代码示例。如果您正苦于以下问题:C# Configure.DefiningEventsAs方法的具体用法?C# Configure.DefiningEventsAs怎么用?C# Configure.DefiningEventsAs使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Configure
的用法示例。
在下文中一共展示了Configure.DefiningEventsAs方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Usage
Usage(Configure configure)
{
#region DefiningEventsAs
configure.DefiningEventsAs(t =>
t.Namespace != null &&
t.Namespace.StartsWith("Domain") &&
t.Name.EndsWith("Event"));
#endregion
}
示例2: ServiceControlEventsConfig
ServiceControlEventsConfig(Configure configure)
{
#region ServiceControlEventsConfig
Configure.Serialization.Json();
configure.DefiningEventsAs(t => typeof(IEvent).IsAssignableFrom(t) ||
//include ServiceControl events
t.Namespace != null &&
t.Namespace.StartsWith("ServiceControl.Contracts"));
#endregion
}
示例3: ConfigureBus
public void ConfigureBus(Configure config, string endpointName, IWindsorContainer container)
{
config.DefineEndpointName(endpointName);
config.CastleWindsorBuilder(container);
//config.UseNHibernateTimeoutPersister();
config.UseNHibernateSubscriptionPersister();
config.DisableTimeoutManager();
config.DefiningCommandsAs(t => t.GetInterfaces().Contains(typeof(Contracts.ICommand)));
config.DefiningEventsAs(t => t.GetInterfaces().Contains(typeof(Contracts.IEvent)));
config.SetEndpointSLA(TimeSpan.FromSeconds(600));
config.UnicastBus();
}
示例4: Usage
Usage(Configure configure)
{
#region MessageConventions
// NOTE: When you're self hosting, '.DefiningXXXAs()' has to be before '.UnicastBus()',
// otherwise you'll get: 'System.InvalidOperationException: "No destination specified for message(s): MessageTypeName"
configure.DefiningCommandsAs(t => t.Namespace == "MyNamespace.Messages.Commands");
configure.DefiningEventsAs(t => t.Namespace == "MyNamespace.Messages.Events");
configure.DefiningMessagesAs(t => t.Namespace == "MyNamespace.Messages");
configure.DefiningEncryptedPropertiesAs(p => p.Name.StartsWith("Encrypted"));
configure.DefiningDataBusPropertiesAs(p =>p.Name.EndsWith("DataBus"));
configure.DefiningExpressMessagesAs(t =>t.Name.EndsWith("Express"));
configure.DefiningTimeToBeReceivedAs(t =>
t.Name.EndsWith("Expires") ? TimeSpan.FromSeconds(30) : TimeSpan.MaxValue);
#endregion
}
示例5: Bootstrapper
public Bootstrapper(ServiceBase host = null, HostArguments hostArguments = null, Configure configure = null)
{
// .NET default limit is 10. RavenDB in conjunction with transports that use HTTP exceeds that limit.
ServicePointManager.DefaultConnectionLimit = Settings.HttpDefaultConnectionLimit;
Settings.ServiceName = DetermineServiceName(host, hostArguments);
ConfigureLogging();
var containerBuilder = new ContainerBuilder();
Container = containerBuilder.Build();
// Disable Auditing for the service control endpoint
Configure.Features.Disable<Audit>();
Configure.Features.Enable<Sagas>();
Feature.Disable<AutoSubscribe>();
Feature.Disable<SecondLevelRetries>();
Configure.Serialization.Json();
Configure.Transactions.Advanced(t => t.DisableDistributedTransactions().DoNotWrapHandlersExecutionInATransactionScope());
Feature.EnableByDefault<StorageDrivenPublisher>();
Configure.ScaleOut(s => s.UseSingleBrokerQueue());
var transportType = DetermineTransportType();
if (configure == null)
{
configure = Configure
.With(AllAssemblies.Except("ServiceControl.Plugin"));
}
bus = configure
.DefiningEventsAs(t => typeof(IEvent).IsAssignableFrom(t) || IsExternalContract(t))
.DefineEndpointName(Settings.ServiceName)
.AutofacBuilder(Container)
.UseTransport(transportType)
.MessageForwardingInCaseOfFault()
.DefineCriticalErrorAction((s, exception) =>
{
if (host != null)
{
host.Stop();
}
})
.UnicastBus()
.CreateBus();
}