在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → D-ASYNC:无框架微服务开发的未来

D-ASYNC:无框架微服务开发的未来

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:2.24M
  • 下载次数:0
  • 浏览次数:38
  • 发布时间:2024-03-19
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 

实例介绍

【实例简介】
D-ASYNC代表着微服务开发的一种全新理念,它基于服务导向编程语言(SOPL)构建,为开发者提供了一个多面向且全面的解决方案,用于构建面向服务的应用程序。D-ASYNC的核心在于其独特的语言集成状态流引擎、服务间通信(包括HTTP、gRPC、消息队列、事件流)的可扩展框架、最佳微服务实践的实现、分布式追踪的统一方法、API生成及版本控制能力以及清晰的错误处理。

D-ASYNC的使命是赋予开发者零成本开发可扩展、可靠和安全微服务的超能力。通过使用语言本身的特性,开发者可以更加专注于应用程序的核心价值,使得编写、阅读、演进和维护代码变得更加简单。

服务间通信示例:
public interface IPaymentTerminal
{
  Task Pay(Order order, CreditCard card);
}

public class BaristaWorker
{
  private IPaymentTerminal _paymentTerminal;

  public BaristaWorker(IPaymentTerminal paymentTerminal)
  {
    _paymentTerminal = paymentTerminal;
  }
  
  protected virtual async Task<Order> TakeOrder()
  {
    Order order = ...;
    CreditCard card = ...;
    await _paymentTerminal.Pay(order, card);
  }
}

状态流与反应式编程示例:
public class CustomerManagementService : ICustomerManagementService
{
  public virtual event EventHandler<CustomerInfo> CustomerRegistered;

  public virtual async Task RegisterCustomer(CustomerInfo customerInfo)
  {
    CustomerRegistered?.Invoke(this, customerInfo);
  }
}

D-ASYNC不仅仅是技术上的创新,它还代表着开发模式的转变,让开发者能够更加自由地设计和实现微服务架构,无需担心底层的复杂性和开发成本。
【实例截图】
【核心代码】
文件清单
└── Dasync-55fa988c4e6b6593a1515b65ed31fc7b1e6dc994
    ├── build
    │   └── Pack-All.ps1
    ├── dasync-banner.jpg
    ├── dasync-concept.png
    ├── docs
    │   ├── Configuration-Structure.md
    │   ├── Core-Concepts.md
    │   ├── media
    │   │   ├── Tutorial1-1-New-AspNet-Project.png
    │   │   ├── Tutorial1-2-Add-Dasync-NuGet.png
    │   │   ├── Tutorial1-3-Configure-Startup.png
    │   │   ├── Tutorial1-4-Create-Service.png
    │   │   ├── Tutorial1-5-Define-Model.png
    │   │   ├── Tutorial1-6-Execute-Query.png
    │   │   └── Tutorial1-7-Execute-Command.png
    │   ├── Method-Behavior-Options.md
    │   ├── README.md
    │   ├── Reference-By-Technology.md
    │   └── Tutorial-1-Create-First-Service.md
    ├── examples
    │   ├── AspNetCoreDocker
    │   │   ├── AntiFraud.Domain
    │   │   │   ├── AntiFraud.Domain.csproj
    │   │   │   └── AntiFraudService.cs
    │   │   ├── AntiFraud.Runtime
    │   │   │   ├── AntiFraud.Runtime.csproj
    │   │   │   ├── appsettings.Development.json
    │   │   │   ├── appsettings.IISExpress.json
    │   │   │   ├── appsettings.json
    │   │   │   ├── Dockerfile
    │   │   │   ├── Program.cs
    │   │   │   ├── Properties
    │   │   │   │   └── launchSettings.json
    │   │   │   └── Startup.cs
    │   │   ├── assets
    │   │   │   ├── dasync-onion-architecture.png
    │   │   │   ├── multiple-startup-projects.png
    │   │   │   └── service-diagram.png
    │   │   ├── docker-compose.dcproj
    │   │   ├── docker-compose.override.yml
    │   │   ├── docker-compose.yml
    │   │   ├── README.md
    │   │   ├── Users.Contract
    │   │   │   ├── IUsersService.cs
    │   │   │   ├── UserAlreadyRegisteredException.cs
    │   │   │   ├── User.cs
    │   │   │   ├── UserNotFoundException.cs
    │   │   │   └── Users.Contract.csproj
    │   │   ├── Users.Domain
    │   │   │   ├── Users.Domain.csproj
    │   │   │   └── UsersService.cs
    │   │   └── Users.Runtime
    │   │       ├── appsettings.Development.json
    │   │       ├── appsettings.IISExpress.json
    │   │       ├── appsettings.json
    │   │       ├── Dockerfile
    │   │       ├── Program.cs
    │   │       ├── Properties
    │   │       │   └── launchSettings.json
    │   │       ├── Startup.cs
    │   │       └── Users.Runtime.csproj
    │   ├── AspNetCoreDocker.sln
    │   ├── Features
    │   │   ├── Dasync.Features.Emulated.csproj
    │   │   ├── Feature1.StatefulAsyncMethods.cs
    │   │   ├── Feature2.ManualCheckpoint.cs
    │   │   ├── Feature3.DelaySavesRoutineState.cs
    │   │   ├── Feature4.RoutineParallelExecution.cs
    │   │   ├── Feature5.ServiceDependencyInjection.cs
    │   │   ├── Feature6.Saga.cs
    │   │   ├── Feature7.Events.cs
    │   │   ├── IFeatureDemo.cs
    │   │   └── Program.cs
    │   └── Features.sln
    ├── LICENSE
    ├── README.md
    └── src
        ├── Communication
        │   ├── Http
        │   │   ├── Dasync.Communication.Http.csproj
        │   │   ├── DasyncHttpCodes.cs
        │   │   ├── DasyncHttpHeaders.cs
        │   │   ├── DI.cs
        │   │   ├── HttpCommunicationMethod.cs
        │   │   ├── HttpCommunicator.cs
        │   │   ├── HttpCommunicatorSettings.cs
        │   │   └── HttpHeadersExtensions.cs
        │   ├── InMemory
        │   │   ├── CommunicationMessage.cs
        │   │   ├── Dasync.Communication.InMemory.csproj
        │   │   ├── DI.cs
        │   │   ├── EventPublishDataTransformer.cs
        │   │   ├── InMemoryCommunicationMethod.cs
        │   │   ├── InMemoryCommunicator.cs
        │   │   ├── InMemoryEventingMethod.cs
        │   │   ├── InMemoryEventPublisher.cs
        │   │   ├── InMemoryMessageHandler.cs
        │   │   ├── InMemoryMessageListener.cs
        │   │   ├── InMemoryMessageListeningMethod.cs
        │   │   ├── Message.cs
        │   │   ├── MessageHandle.cs
        │   │   ├── MessageHub.cs
        │   │   ├── MessageType.cs
        │   │   ├── MethodContinuationDataTransformer.cs
        │   │   └── MethodInvocationDataTransformer.cs
        │   └── RabbitMQ
        │       ├── CommunicationMessage.cs
        │       ├── CommunicationSettings.cs
        │       ├── ConnectionManager.cs
        │       ├── ConnectionSettingsComparer.cs
        │       ├── ConnectionSettings.cs
        │       ├── Dasync.Communication.RabbitMQ.csproj
        │       ├── DI.cs
        │       ├── MessageTypes.cs
        │       ├── RabbitMQCommunicationMethod.cs
        │       ├── RabbitMQCommunicator.cs
        │       ├── RabbitMQMessageHandler.cs
        │       ├── RabbitMQMessageListener.cs
        │       └── RabbitMQMessageListiningMethod.cs
        ├── Dasync.sln
        ├── Data
        │   ├── EFCore
        │   │   ├── DasyncDbContext.cs
        │   │   ├── Dasync.EntityFrameworkCore.csproj
        │   │   ├── DI.cs
        │   │   ├── Hooks
        │   │   │   ├── DbContextEvents.cs
        │   │   │   ├── DbContextProxy.cs
        │   │   │   ├── IDbContextModelExtender.cs
        │   │   │   ├── IDbContextMonitor.cs
        │   │   │   ├── IDbContextProxy.cs
        │   │   │   └── ServiceCollectionExtensions.cs
        │   │   ├── ICurrentDbContext.cs
        │   │   ├── IDbContextEvents.cs
        │   │   ├── Serialization
        │   │   │   ├── DbContextSerializer.cs
        │   │   │   ├── EntityProjectionSerializer.cs
        │   │   │   ├── EntitySerializer.cs
        │   │   │   ├── KnownDbContext.cs
        │   │   │   └── SerializerSelector.cs
        │   │   └── UnitOfWork
        │   │       ├── CurrentDbContextProvider.cs
        │   │       ├── ServiceCollectionExtensions.cs
        │   │       ├── UnitOfWorkDbContextModelExtender.cs
        │   │       ├── UnitOfWorkRecordConfiguration.cs
        │   │       └── UnitOfWorkRecord.cs
        │   ├── Projections
        │   │   ├── Dasync.Projections.csproj
        │   │   ├── Internals
        │   │   │   ├── ProjectionBase.cs
        │   │   │   └── ProjectionTypeBuilder.cs
        │   │   ├── ObjectExtensions.cs
        │   │   ├── Projection.cs
        │   │   └── TypeInfoExtensions.cs
        │   ├── Serialization
        │   │   ├── AssemblyNameShortenerChain.cs
        │   │   ├── Dasync.Serialization.csproj
        │   │   ├── DI.cs
        │   │   ├── IAssemblyNameShortener.cs
        │   │   ├── IObjectComposer.cs
        │   │   ├── IObjectComposerSelector.cs
        │   │   ├── IObjectDecomposer.cs
        │   │   ├── IObjectDecomposerSelector.cs
        │   │   ├── ISerializer.cs
        │   │   ├── ISerializerFactory.cs
        │   │   ├── ITextSerializer.cs
        │   │   ├── ITypeNameShortener.cs
        │   │   ├── ObjectComposerSelectorChain.cs
        │   │   ├── ObjectDecomposerSelectorChain.cs
        │   │   ├── SerializedValueContainer.cs
        │   │   ├── SerializerExtensions.cs
        │   │   ├── SerializerProvider.cs
        │   │   ├── TypeNameShortenerChain.cs
        │   │   ├── UnserializableTypeException.cs
        │   │   └── ValueContainerCopier.cs
        │   ├── Serialization.DasyncJson
        │   │   ├── Base
        │   │   │   ├── AssemblyExtensions.cs
        │   │   │   ├── AssemblyResolver.cs
        │   │   │   ├── AssemblySerializationInfo.cs
        │   │   │   ├── ByteArrayExtensions.cs
        │   │   │   ├── IAssemblyResolver.cs
        │   │   │   ├── IObjectReconstructor.cs
        │   │   │   ├── IStandardSerializerFactory.cs
        │   │   │   ├── ITypeResolver.cs
        │   │   │   ├── IValueContainerSerializer.cs
        │   │   │   ├── IValueReader.cs
        │   │   │   ├── IValueReaderFactory.cs
        │   │   │   ├── IValueWriter.cs
        │   │   │   ├── IValueWriterFactory.cs
        │   │   │   ├── ObjectDecomposerSelectorExtensions.cs
        │   │   │   ├── ObjectIDGenerator.cs
        │   │   │   ├── ObjectReconstructor.cs
        │   │   │   ├── Poco.cs
        │   │   │   ├── PocoTypeExtensions.cs
        │   │   │   ├── StandardSerializer.cs
        │   │   │   ├── StandardSerializerFactory.cs
        │   │   │   ├── StandardTextSerializer.cs
        │   │   │   ├── StringExtensions.cs
        │   │   │   ├── TypeExtensions.cs
        │   │   │   ├── TypeResolver.cs
        │   │   │   ├── TypeSerializationInfo.cs
        │   │   │   ├── TypeSerializerHelper.cs
        │   │   │   ├── ValueContainerReader.cs
        │   │   │   ├── ValueContainerSerializer.cs
        │   │   │   └── ValueInfo.cs
        │   │   ├── DasyncJsonSerializerFactory.cs
        │   │   ├── Dasync.Serialization.DasyncJson.csproj
        │   │   ├── DI.cs
        │   │   ├── Encodings.cs
        │   │   ├── JsonValueReader.cs
        │   │   ├── JsonValueReaderFactory.cs
        │   │   ├── JsonValueWriter.cs
        │   │   └── JsonValueWriterFactory.cs
        │   ├── Serialization.Json
        │   │   ├── Converters
        │   │   │   ├── TypeNameConverter.cs
        │   │   │   └── ValueContainerConverter.cs
        │   │   ├── Dasync.Serialization.Json.csproj
        │   │   ├── DI.cs
        │   │   ├── Encodings.cs
        │   │   ├── JsonSerializerAdapter.cs
        │   │   └── JsonSerializerAdapterFactory.cs
        │   ├── Serializers.DomainTypes
        │   │   ├── Dasync.Serializers.DomainTypes.csproj
        │   │   ├── DI.cs
        │   │   ├── DomainTypesNameShortener.cs
        │   │   ├── DomainTypesSerializerSelector.cs
        │   │   └── Projections
        │   │       ├── EntityProjectionBase.cs
        │   │       ├── EntityProjection.cs
        │   │       ├── EntityProjectionSerializer.cs
        │   │       ├── EntityProjectionTypeBuilder.cs
        │   │       └── TypeInfoExtensions.cs
        │   ├── Serializers.EETypes
        │   │   ├── Cancellation
        │   │   │   ├── CancellationToken.cs
        │   │   │   └── CancellationTokenSource.cs
        │   │   ├── Dasync.Serializers.EETypes.csproj
        │   │   ├── DI.cs
        │   │   ├── EEAssemblyNameShortener.cs
        │   │   ├── EETypesNameShortener.cs
        │   │   ├── EETypesSerializerSelector.cs
        │   │   ├── ServiceProxy.cs
        │   │   ├── TaskAwaiter.cs
        │   │   ├── Task.cs
        │   │   ├── Triggers
        │   │   │   └── TaskCompletionSource.cs
        │   │   └── TypeExtensions.cs
        │   ├── Serializers.StandardTypes
        │   │   ├── Collections
        │   │   │   ├── Dictionary.cs
        │   │   │   ├── Hashset.cs
        │   │   │   ├── KeyValuePair.cs
        │   │   │   └── List.cs
        │   │   ├── Dasync.Serializers.StandardTypes.csproj
        │   │   ├── DI.cs
        │   │   ├── Metadata
        │   │   │   └── Version.cs
        │   │   ├── Runtime
        │   │   │   ├── Exception.cs
        │   │   │   └── ExceptionExtensions.cs
        │   │   ├── SerializerBase.cs
        │   │   ├── StandardAssemblyNameShortener.cs
        │   │   ├── StandardTypeComposerSelector.cs
        │   │   ├── StandardTypeDecomposerSelector.cs
        │   │   ├── StandardTypeNameShortener.cs
        │   │   ├── Time
        │   │   │   ├── DateTime.cs
        │   │   │   ├── DateTimeOffset.cs
        │   │   │   └── TimeSpan.cs
        │   │   └── TypeExtensions.cs
        │   └── ValueContainer
        │       ├── Dasync.ValueContainer.csproj
        │       ├── EmptyValueContainer.cs
        │       ├── IStronglyTypedValueContainer.cs
        │       ├── IValueContainer.cs
        │       ├── IValueContainerFactory.cs
        │       ├── IValueContainerProxyFactory.cs
        │       ├── IValueContainerWithTypeInfo.cs
        │       ├── MemberAccessor.cs
        │       ├── NamedValue.cs
        │       ├── README.md
        │       ├── ValueContainerBase.cs
        │       ├── ValueContainer.cs
        │       ├── ValueContainerEnumerable.cs
        │       ├── ValueContainerExtensions.cs
        │       ├── ValueContainerFactory.cs
        │       └── ValueContainerTypeBuilder.cs
        ├── Engine
        │   ├── Accessors
        │   │   ├── AsyncDebugging.cs
        │   │   ├── AsyncLocal.cs
        │   │   ├── AsyncStateMachineBoxAccessor.cs
        │   │   ├── AwaitTaskContinuationAccessor.cs
        │   │   ├── CancellationCallbackInfoExtenstions.cs
        │   │   ├── CancellationTokenRegistrationExtensions.cs
        │   │   ├── CancellationTokenSourceStateExtensions.cs
        │   │   ├── CancellationTokenSourceStateHolder.cs
        │   │   ├── CancellationTokenSourceWithState.cs
        │   │   ├── CancelletionTokenExtensions.cs
        │   │   ├── CancelletionTokenSourceExtensions.cs
        │   │   ├── ContinuationWrapperAccessor.cs
        │   │   ├── Dasync.Accessors.csproj
        │   │   ├── DelayPromiseAccessor.cs
        │   │   ├── Extensions_IAsyncStateMachine.cs
        │   │   ├── MoveNextRunnerAccessor.cs
        │   │   ├── ReflectionExtensions.cs
        │   │   ├── StandardTaskContinuationAccessor.cs
        │   │   ├── SynchronizationContextAwaitTaskContinuationAccessor.cs
        │   │   ├── TaskAccessor.cs
        │   │   ├── TaskAwaiterUtils.cs
        │   │   ├── TaskCapture.cs
        │   │   ├── TaskCompletionSourceAccessor.cs
        │   │   ├── TimerExtensions.cs
        │   │   ├── TimerQueueExtensions.cs
        │   │   ├── TimerQueueTimerAccessor.cs
        │   │   └── WhenAllPromiseAccessor.cs
        │   ├── AsyncStateMachine
        │   │   ├── AsyncStateMachineAccessor.cs
        │   │   ├── AsyncStateMachineAccessorFactory.cs
        │   │   ├── AsyncStateMachineField.cs
        │   │   ├── AsyncStateMachineFieldType.cs
        │   │   ├── AsyncStateMachineMetadataBuilder.cs
        │   │   ├── AsyncStateMachineMetadataBuilderExtensions.cs
        │   │   ├── AsyncStateMachineMetadata.cs
        │   │   ├── AsyncStateMachineMetadataProvider.cs
        │   │   ├── AsyncStateMachineMetadataProviderExtensions.cs
        │   │   ├── AsyncTaskMethodBuilderExtensions.cs
        │   │   ├── Dasync.AsyncStateMachine.csproj
        │   │   ├── DI.cs
        │   │   ├── Extensions_MethodInfo.cs
        │   │   ├── IAsyncStateMachineAccessor.cs
        │   │   ├── IAsyncStateMachineAccessorFactory.cs
        │   │   ├── IAsyncStateMachineMetadataBuilder.cs
        │   │   ├── IAsyncStateMachineMetadataProvider.cs
        │   │   └── MethodInfoToStateMachineTypeConverter.cs
        │   ├── EETypes
        │   │   ├── AsyncLocal.cs
        │   │   ├── Cancellation
        │   │   │   ├── CancellationTokenSourceState.cs
        │   │   │   ├── ICancellationTokenSourceIdGenerator.cs
        │   │   │   └── ICancellationTokenSourceRegistry.cs
        │   │   ├── Communication
        │   │   │   ├── CommunicationMethodNotFoundException.cs
        │   │   │   ├── CommunicationTraits.cs
        │   │   │   ├── ContinueRoutineResult.cs
        │   │   │   ├── EventCommunicationSettings.cs
        │   │   │   ├── EventPublishData.cs
        │   │   │   ├── ICommunicationMethod.cs
        │   │   │   ├── ICommunicationSettingsProvider.cs
        │   │   │   ├── ICommunicator.cs
        │   │   │   ├── ICommunicatorMessage.cs
        │   │   │   ├── ICommunicatorProvider.cs
        │   │   │   ├── IEventingMethod.cs
        │   │   │   ├── IEventPublisher.cs
        │   │   │   ├── IEventPublisherProvider.cs
        │   │   │   ├── IMessageHandle.cs
        │   │   │   ├── IMessageListener.cs
        │   │   │   ├── IMessageListeningMethod.cs
        │   │   │   ├── InvocationOutcome.cs
        │   │   │   ├── InvocationPreferences.cs
        │   │   │   ├── InvokeRoutineResult.cs
        │   │   │   ├── ISynchronousCommunicator.cs
        │   │   │   ├── MethodCommunicationSettings.cs
        │   │   │   ├── MethodContinuationData.cs
        │   │   │   ├── MethodInvocationData.cs
        │   │   │   └── PublishPreferences.cs
        │   │   ├── Configuration
        │   │   │   ├── ConfigOverrideLevels.cs
        │   │   │   └── ICommunicationModelConfiguration.cs
        │   │   ├── Dasync.EETypes.csproj
        │   │   ├── Descriptors
        │   │   │   ├── CallerDescriptor.cs
        │   │   │   ├── ContinuationDescriptor.cs
        │   │   │   ├── EventDescriptor.cs
        │   │   │   ├── EventSubscriberDescriptor.cs
        │   │   │   ├── ServiceDescriptor.cs
        │   │   │   ├── TaskResult.cs
        │   │   │   ├── TransitionDescriptor.cs
        │   │   │   └── TransitionType.cs
        │   │   ├── Engine
        │   │   │   ├── ILocalMethodRunner.cs
        │   │   │   ├── ISingleEventPublisher.cs
        │   │   │   ├── ISingleMethodInvoker.cs
        │   │   │   └── ITransitionRunner.cs
        │   │   ├── EventId.cs
        │   │   ├── Eventing
        │   │   │   └── IEventSubscriber.cs
        │   │   ├── IEventIdProvider.cs
        │   │   ├── IMethodIdProvider.cs
        │   │   ├── Intents
        │   │   │   ├── ActivateTriggerIntent.cs
        │   │   │   ├── ContinueRoutineIntent.cs
        │   │   │   ├── CreateServiceInstanceIntent.cs
        │   │   │   ├── ExecuteRoutineIntent.cs
        │   │   │   ├── RaiseEventIntent.cs
        │   │   │   ├── RegisterTriggerIntent.cs
        │   │   │   ├── SaveStateIntent.cs
        │   │   │   ├── ScheduledActions.cs
        │   │   │   └── SubscribeToTriggerIntent.cs
        │   │   ├── INumericIdGenerator.cs
        │   │   ├── Ioc
        │   │   │   └── IDomainServiceProvider.cs
        │   │   ├── IProxyTaskState.cs
        │   │   ├── ITransitionContext.cs
        │   │   ├── IUniqueIdGenerator.cs
        │   │   ├── MethodId.cs
        │   │   ├── PersistedMethodId.cs
        │   │   ├── Persistence
        │   │   │   ├── ETagMismatchException.cs
        │   │   │   ├── IMethodStateStorage.cs
        │   │   │   ├── IMethodStateStorageProvider.cs
        │   │   │   ├── IPersistenceMethod.cs
        │   │   │   ├── MethodExecutionState.cs
        │   │   │   ├── MethodStateStorageNotFoundException.cs
        │   │   │   ├── SerializedMethodContinuationState.cs
        │   │   │   └── StateNotFoundException.cs
        │   │   ├── Platform
        │   │   │   ├── IRoutineCompletionNotifier.cs
        │   │   │   ├── IRoutineCompletionSink.cs
        │   │   │   ├── ITransitionCarrier.cs
        │   │   │   ├── ITransitionCommitter.cs
        │   │   │   └── TransitionCommitOptions.cs
        │   │   ├── Proxy
        │   │   │   ├── IServiceProxyBuilder.cs
        │   │   │   ├── RoutineReference.cs
        │   │   │   └── ServiceProxyContext.cs
        │   │   ├── Resolvers
        │   │   │   ├── IEventReference.cs
        │   │   │   ├── IEventResolver.cs
        │   │   │   ├── IMethodReference.cs
        │   │   │   ├── IMethodResolver.cs
        │   │   │   ├── IServiceReference.cs
        │   │   │   └── IServiceResolver.cs
        │   │   ├── Route.cs
        │   │   ├── ServiceId.cs
        │   │   └── Triggers
        │   │       ├── ITaskCompletionSourceRegistry.cs
        │   │       └── TriggerReference.cs
        │   ├── ExecutionEngine
        │   │   ├── Cancellation
        │   │   │   ├── CancellationTokenSourceIdGenerator.cs
        │   │   │   └── CancellationTokenSourceRegistry.cs
        │   │   ├── Communication
        │   │   │   ├── CommunicatorProvider.cs
        │   │   │   ├── EventPublisherProvider.cs
        │   │   │   ├── SingleEventPublisher.cs
        │   │   │   └── SingleMethodInvoker.cs
        │   │   ├── ConcurrentTransitionException.cs
        │   │   ├── Configuration
        │   │   │   ├── CommunicationModelConfiguration.cs
        │   │   │   ├── ConfigurationSectionKey.cs
        │   │   │   ├── PrimitiveType.cs
        │   │   │   └── ServiceCategory.cs
        │   │   ├── Continuation
        │   │   │   ├── TaskContinuationClassifier.cs
        │   │   │   ├── TaskContinuationInfo.cs
        │   │   │   ├── TaskContinuationTracker.cs
        │   │   │   └── TaskContinuationType.cs
        │   │   ├── Dasync.ExecutionEngine.csproj
        │   │   ├── DI.cs
        │   │   ├── DomainServiceProvider.cs
        │   │   ├── EventIdProvider.cs
        │   │   ├── Eventing
        │   │   │   ├── EventSubscriber.cs
        │   │   │   └── MulticastEventPublisher.cs
        │   │   ├── Extensions
        │   │   │   └── TaskResultExtensions.cs
        │   │   ├── IntrinsicFlow
        │   │   │   ├── InterceptingSynchronizationContext.cs
        │   │   │   ├── IntrinsicCommunicationModel.cs
        │   │   │   ├── IntrinsicFlowController.cs
        │   │   │   ├── IntrinsicRoutines.cs
        │   │   │   └── WhenAllInputParameters.cs
        │   │   ├── MethodIdProvider.cs
        │   │   ├── Modeling
        │   │   │   ├── ExternalCommunicationModel.cs
        │   │   │   ├── ExternalMethodDefinition.cs
        │   │   │   └── ExternalServiceDefinition.cs
        │   │   ├── NumericIdGenerator.cs
        │   │   ├── Persistence
        │   │   │   └── MethodStateStorageProvider.cs
        │   │   ├── Proxy
        │   │   │   ├── ProxyMethodExecutor.cs
        │   │   │   └── ServiceProxyBuilder.cs
        │   │   ├── ReflectionExtensions.cs
        │   │   ├── Resolvers
        │   │   │   ├── EventReference.cs
        │   │   │   ├── EventResolver.cs
        │   │   │   ├── MethodReference.cs
        │   │   │   ├── MethodResolver.cs
        │   │   │   ├── ServiceReference.cs
        │   │   │   └── ServiceResolver.cs
        │   │   ├── Settings
        │   │   │   └── CommunicationSettingsProvider.cs
        │   │   ├── Startup
        │   │   │   ├── CommunicationListener.cs
        │   │   │   └── StartupHostedService.cs
        │   │   ├── StateMetadata
        │   │   │   └── Service
        │   │   │       ├── ServiceStateMetadata.cs
        │   │   │       ├── ServiceStateMetadataProvider.cs
        │   │   │       ├── ServiceStateValueContainerProvider.cs
        │   │   │       └── ServiceStateVariable.cs
        │   │   ├── Transitions
        │   │   │   ├── RoutineCompletionNotificationHub.cs
        │   │   │   ├── TransitionCarrier.cs
        │   │   │   ├── TransitionContext.cs
        │   │   │   ├── TransitionMonitor.cs
        │   │   │   ├── TransitionRunner.Commit.cs
        │   │   │   ├── TransitionRunner.cs
        │   │   │   ├── TransitionRunner.Invoke.cs
        │   │   │   └── TransitionScope.cs
        │   │   ├── Triggers
        │   │   │   └── TaskCompletionSourceRegistry.cs
        │   │   ├── UniqueIdGenerator.cs
        │   │   └── Utils
        │   │       └── InvocationDataUtils.cs
        │   └── Proxy
        │       ├── Dasync.Proxy.csproj
        │       ├── DI.cs
        │       ├── IMethodInvoker.cs
        │       ├── IMethodInvokerFactory.cs
        │       ├── IProxy.cs
        │       ├── IProxyMethodExecutor.cs
        │       ├── IProxyTypeBuilder.cs
        │       ├── MethodInvoker.cs
        │       ├── MethodInvokerFactory.cs
        │       ├── ProxyTypeBuilder.cs
        │       └── README.md
        ├── Fabric
        │   ├── AspNetCore
        │   │   ├── ApplicationExtensions.cs
        │   │   ├── AspNetCoreEnvironment.cs
        │   │   ├── ConfigurationExtensions.cs
        │   │   ├── Dasync.Fabric.AspNetCore.csproj
        │   │   └── ServiceCollectionExtensions.cs
        │   └── InMemory
        │       ├── Dasync.Fabric.InMemory.csproj
        │       └── ServiceCollectionExtensions.cs
        ├── Hosting
        │   └── AspNetCore
        │       ├── Dasync.Hosting.AspNetCore.csproj
        │       ├── DasyncMiddleware.cs
        │       ├── Development
        │       │   ├── BackgroundEventSubscriber.cs
        │       │   ├── DI.cs
        │       │   ├── EventingHttpClient.cs
        │       │   ├── EventingMethod.cs
        │       │   ├── EventingMiddleware.cs
        │       │   ├── EventPublisher.cs
        │       │   ├── MessageListeningMethod.cs
        │       │   └── SubscribeEnvelope.cs
        │       ├── DI.cs
        │       ├── Errors
        │       │   ├── Error.cs
        │       │   ├── ErrorEnvelope.cs
        │       │   └── ExceptionToErrorConverter.cs
        │       ├── Http
        │       │   ├── HttpHeadersExtensions.cs
        │       │   ├── HttpRequestContentExtensions.cs
        │       │   └── RFC7240Preferences.cs
        │       ├── HttpRequestHandler.cs
        │       ├── Invocation
        │       │   └── HttpCommunicatorMessage.cs
        │       └── Utils
        │           ├── StreamExtensions.cs
        │           └── TaskExtensions.cs
        ├── IoC
        │   └── DependencyInjection
        │       ├── Dasync.DependencyInjection.csproj
        │       ├── DI.cs
        │       ├── IScopedServiceProvider.cs
        │       ├── IServiceProviderScope.cs
        │       ├── ScopedServiceProvider.cs
        │       ├── ServiceCollectionDasyncExtensions.cs
        │       ├── ServiceCollectionExtensions.cs
        │       ├── ServiceCollectionModuleExtensions.cs
        │       ├── ServiceDescriptorList.cs
        │       ├── ServiceProviderScope.cs
        │       └── ServiceProviderScopeFactory.cs
        ├── Modeling
        │   ├── Builder
        │   │   ├── CommandDefinitionBuilder.cs
        │   │   ├── CommunicationModelBuilder.cs
        │   │   ├── EntityProjectionDefinitionBuilder.cs
        │   │   ├── EventDefinitionBuilder.cs
        │   │   ├── ExternalServiceDefinitionBuilder.cs
        │   │   ├── MethodDefinitionBuilder.cs
        │   │   ├── QueryDefinitionBuilder.cs
        │   │   └── ServiceDefinitionBuilder.cs
        │   ├── Conventions
        │   │   ├── DefaultServiceInterfaceFinder.cs
        │   │   ├── DefaultServiceNamer.cs
        │   │   ├── ModelingExtensions.cs
        │   │   └── ModelRefiner.cs
        │   ├── Dasync.Modeling.csproj
        │   ├── Interfaces
        │   │   ├── ICommandDefinition.cs
        │   │   ├── ICommunicationModel.cs
        │   │   ├── IEntityProjectionDefinition.cs
        │   │   ├── IEventDefinition.cs
        │   │   ├── IMethodDefinition.cs
        │   │   ├── IPropertyBag.cs
        │   │   ├── IProperty.cs
        │   │   ├── IQueryDefinition.cs
        │   │   ├── IServiceDefinition.cs
        │   │   └── Mutable
        │   │       ├── IMutableCommandDefinition.cs
        │   │       ├── IMutableCommunicationModel.cs
        │   │       ├── IMutableEntityProjectionDefinition.cs
        │   │       ├── IMutableMethodDefinition.cs
        │   │       ├── IMutablePropertyBag.cs
        │   │       ├── IMutableQueryDefinition.cs
        │   │       ├── IMutableServiceDefinition.cs
        │   │       └── IMutbleEventDefinition.cs
        │   └── Model
        │       ├── CommunicationModel.cs
        │       ├── EntityProjectionDefinition.cs
        │       ├── EventDefinition.cs
        │       ├── MethodDefinition.cs
        │       ├── PropertyBag.cs
        │       ├── Property.cs
        │       ├── ServiceDefinition.cs
        │       └── ServiceType.cs
        └── Persistence
            ├── Cassandra
            │   ├── CassandraPersistenceMethod.cs
            │   ├── CassandraStateStorage.cs
            │   ├── ConnectionSettings.cs
            │   ├── Dasync.Persistence.Cassandra.csproj
            │   ├── DI.cs
            │   ├── Driver
            │   │   ├── CassandraRowExtensions.cs
            │   │   └── VIntCoding.cs
            │   ├── FileStorage.cs
            │   ├── Outcomes.cs
            │   ├── StateStorageSettings.cs
            │   ├── Statuses.cs
            │   ├── StorageRecord.cs
            │   └── StringBuilderCqlExtensions.cs
            ├── FileSystem
            │   ├── Dasync.Persistence.FileSystem.csproj
            │   ├── DI.cs
            │   ├── FilePersistenceMethod.cs
            │   └── FileStorage.cs
            └── InMemory
                ├── Dasync.Persistence.InMemory.csproj
                ├── DI.cs
                ├── InMemoryMethodStateStorage.cs
                └── InMemoryPersistenceMethod.cs

103 directories, 550 files

标签:

实例下载地址

D-ASYNC:无框架微服务开发的未来

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警