# EasyAF - [Core Framework (155 pages)](https://easyaf.dev/_llms/core-framework.md): Documentation for Core Framework. ## REST APIs ### Getting Started - [Microsoft Restier](https://easyaf.dev/restier/index.md): OData V4 API development framework for building standardized RESTful services on .NET - [Quickstart](https://easyaf.dev/restier/quickstart.md): Get started with Restier in minutes - [Contribution Guidelines](https://easyaf.dev/restier/contribution-guidelines.md): Learn how to contribute to the Restier project ### Guides - [Guides](https://easyaf.dev/restier/guides/index.md): The Guides will help you get the most out of Restier. #### Server - [Customizing the Entity Model](https://easyaf.dev/restier/guides/server/model-building.md): Customize and extend your Entity Data Model (EDM) in Restier - [Method Authorization](https://easyaf.dev/restier/guides/server/method-authorization.md): Fine-grain control over API request execution with security rules - [EntitySet Filters](https://easyaf.dev/restier/guides/server/filters.md): Control query results by filtering EntitySets based on business rules - [Interceptors](https://easyaf.dev/restier/guides/server/interceptors.md): Process validation and business logic before and after database operations #### Extending Restier - [Additional WebAPI Operations](https://easyaf.dev/restier/guides/extending-restier/additional-operations.md): Augment your Restier service with custom WebAPI operations - [In-Memory Data Provider](https://easyaf.dev/restier/guides/extending-restier/in-memory-provider.md): Build OData services with all-in-memory resources - [Temporal Types](https://easyaf.dev/restier/guides/extending-restier/temporal-types.md): Working with date and time types in Restier #### Clients - [.NET Client](https://easyaf.dev/restier/guides/clients/dot-net.md): Consume Restier APIs from .NET Framework applications - [.NET Standard Client](https://easyaf.dev/restier/guides/clients/dot-net-standard.md): Consume Restier APIs from .NET Standard and .NET Core applications - [TypeScript Client](https://easyaf.dev/restier/guides/clients/typescript.md): Consume Restier APIs from TypeScript and JavaScript applications ### API Reference #### Microsoft ##### EntityFrameworkCore - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/EntityFrameworkCore/index.md): Summary of the Microsoft.EntityFrameworkCore Namespace - [DbContext](https://easyaf.dev/restier/api-reference/Microsoft/EntityFrameworkCore/DbContext.md): Extension methods for DbContext from Microsoft.EntityFrameworkCore ##### Extensions ###### DependencyInjection - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Extensions/DependencyInjection/index.md): Summary of the Microsoft.Extensions.DependencyInjection Namespace - [IServiceCollection](https://easyaf.dev/restier/api-reference/Microsoft/Extensions/DependencyInjection/IServiceCollection.md): Extension methods for IServiceCollection from Microsoft.Extensions.DependencyInjection.Abstractions ##### Restier ###### Core - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/index.md): Summary of the Microsoft.Restier.Core Namespace - [ApiBase](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ApiBase.md): Represents a base class for an API. - [ChangeSetValidationException](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ChangeSetValidationException.md): Represents an exception that indicates validation errors occurred on entities. - [ConventionBasedChangeSetItemAuthorizer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedChangeSetItemAuthorizer.md): A convention-based change set item authorizer. - [ConventionBasedChangeSetItemFilter](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedChangeSetItemFilter.md): A convention-based change set item processor which calls logic like OnInserting and OnInserted. - [ConventionBasedChangeSetItemValidator](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedChangeSetItemValidator.md): A convention-based change set item validator. - [ConventionBasedMethodNameFactory](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedMethodNameFactory.md): A set of string factory methods than generate Restier names for various possible operations. - [ConventionBasedOperationAuthorizer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedOperationAuthorizer.md): A convention-based operation authorizer. - [ConventionBasedOperationFilter](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedOperationFilter.md): A convention-based change set item filter. - [ConventionBasedQueryExpressionProcessor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionBasedQueryExpressionProcessor.md): A convention-based query expression processor which will apply OnFilter logic into query expression. - [ConventionInvocationException](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/ConventionInvocationException.md): Represents an exception that indicates validation errors occurred on entities. - [DataSourceStub](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/DataSourceStub.md): Represents method stubs that identify API data source. - [EdmModelValidationException](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/EdmModelValidationException.md): Represents an exception that indicates validation errors occurred on entities. - [InvocationContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/InvocationContext.md): Represents context under which an request is processed. The request could be a query, a submit, an operation execution or a model retrieve. ... - [RestierApiBuilder](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierApiBuilder.md): A fluent configuration helper that registers [ApiBase](/restier/api-reference/Microsoft/Restier/Core/ApiBase) instances and tracks the additional Dependency Injectio... - [RestierContainerBuilder](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierContainerBuilder.md): The default Dependency Injection container builder for Restier. - [RestierEntitySetOperation](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierEntitySetOperation.md): Represents the Restier operations available to an EntitySet. - [RestierOperationMethod](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierOperationMethod.md): Represents the Restier operations available to an [IEdmOperationImport](https://learn.microsoft.com/dotnet/api/microsoft.odata.edm.iedmoperationimport). - [RestierPipelineState](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierPipelineState.md): Represents the different parts of the Restier request execution pipeline. - [RestierRouteBuilder](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/RestierRouteBuilder.md): A fluent configuration helper that maps [ApiBase](/restier/api-reference/Microsoft/Restier/Core/ApiBase) instances to ASP.NET OData routes. - [StatusCodeException](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/StatusCodeException.md): Use this exception when you want to return a specific status code ###### Authorization - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Authorization/index.md): Summary of the Microsoft.Restier.Core.Authorization Namespace - [AuthorizationEntry](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Authorization/AuthorizationEntry.md): Describes the methods of verifying various CRUD operations for a given EF Entity. Useful in code generation scenarios - [AuthorizationFactory](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Authorization/AuthorizationFactory.md): Maintains a Dictionary of [AuthorizationEntry](/restier/api-reference/Microsoft/Restier/Core/Authorization/AuthorizationEntry)AuthorizationEntries</see> for ea... ###### Model - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Model/index.md): Summary of the Microsoft.Restier.Core.Model Namespace - [IModelBuilder](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Model/IModelBuilder.md): The service for model generation. - [IModelMapper](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Model/IModelMapper.md): Represents a service that maps between the model space and the object space. - [ModelContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Model/ModelContext.md): Represents context under which a model is requested. ###### Operation - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Operation/index.md): Summary of the Microsoft.Restier.Core.Operation Namespace - [IOperationAuthorizer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Operation/IOperationAuthorizer.md): Represents a operation authorizer. - [IOperationExecutor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Operation/IOperationExecutor.md): Represents a service that executes an operation. - [IOperationFilter](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Operation/IOperationFilter.md): Represents a operation processor. - [OperationContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Operation/OperationContext.md): Represents context under which a operation is executed. One instance created for one execution of one operation. ###### Query - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/index.md): Summary of the Microsoft.Restier.Core.Query Namespace - [DataSourceStubModelReference](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/DataSourceStubModelReference.md): Represents a reference to data source stub in terms of a model. - [IQueryExecutor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/IQueryExecutor.md): Represents a service that executes a query. - [IQueryExpressionAuthorizer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/IQueryExpressionAuthorizer.md): Represents a service that inspects a query expression. - [IQueryExpressionExpander](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/IQueryExpressionExpander.md): Represents a service that expands a query expression. - [IQueryExpressionProcessor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/IQueryExpressionProcessor.md): Represents a service that processes a query expression. - [IQueryExpressionSourcer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/IQueryExpressionSourcer.md): Represents a service that replace queryable source of an expression. - [ParameterModelReference](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/ParameterModelReference.md): Represents a reference to parameter data in terms of a model. It does not have special logic - [PropertyModelReference](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/PropertyModelReference.md): Represents a reference to property data in terms of a model. - [QueryContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/QueryContext.md): Represents context under which a query flow operates. - [QueryExpressionContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/QueryExpressionContext.md): Represents context for a query expression that is used during query expression processing. - [QueryModelReference](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/QueryModelReference.md): Represents a reference to query data in terms of a model. - [QueryRequest](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/QueryRequest.md): Represents a query request. - [QueryResult](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Query/QueryResult.md): Represents a query result. ###### Submit - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/index.md): Summary of the Microsoft.Restier.Core.Submit Namespace - [ChangeSet](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/ChangeSet.md): Represents a change set. - [ChangeSetItem](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/ChangeSetItem.md): Represents an item in a change set. - [ChangeSetItemValidationResult](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/ChangeSetItemValidationResult.md): Represents a single result when validating an entity, property, etc. - [DataModificationItem](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/DataModificationItem.md): Represents a data modification item in a change set. - [DataModificationItem](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/DataModificationItem.md): Represents a data modification item in a change set. - [DefaultChangeSetInitializer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/DefaultChangeSetInitializer.md): Provides a default implementation of the [IChangeSetInitializer](/restier/api-reference/Microsoft/Restier/Core/Submit/IChangeSetInitializer) interface. - [DefaultSubmitExecutor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/DefaultSubmitExecutor.md): Default implementation of [ISubmitExecutor](/restier/api-reference/Microsoft/Restier/Core/Submit/ISubmitExecutor). - [IChangeSetInitializer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/IChangeSetInitializer.md): Represents a service that can initialize a change set. - [IChangeSetItemAuthorizer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/IChangeSetItemAuthorizer.md): Represents a change set item authorizer. - [IChangeSetItemFilter](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/IChangeSetItemFilter.md): Represents a change set item filter to have logic before and after change set item processed. - [IChangeSetItemValidator](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/IChangeSetItemValidator.md): Represents a change set entry validator. - [ISubmitExecutor](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/ISubmitExecutor.md): Represents a service that executes a submission. - [SubmitContext](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/SubmitContext.md): Represents context under which a submit flow operates. - [SubmitResult](https://easyaf.dev/restier/api-reference/Microsoft/Restier/Core/Submit/SubmitResult.md): Represents a submit result. ###### EntityFramework - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFramework/index.md): Summary of the Microsoft.Restier.EntityFramework Namespace - [EFChangeSetInitializer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFramework/EFChangeSetInitializer.md): To prepare changed entries for the given [ChangeSet](/restier/api-reference/Microsoft/Restier/Core/Submit/ChangeSet). - [EntityFrameworkApi](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFramework/EntityFrameworkApi.md): Represents an API over a DbContext. - [IEntityFrameworkApi](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFramework/IEntityFrameworkApi.md): Interface for Entity Framework Api instances. Makes easy retrieval of the DbContext possible. ###### EntityFrameworkCore - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFrameworkCore/index.md): Summary of the Microsoft.Restier.EntityFrameworkCore Namespace - [EFChangeSetInitializer](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFrameworkCore/EFChangeSetInitializer.md): To prepare changed entries for the given [ChangeSet](/restier/api-reference/Microsoft/Restier/Core/Submit/ChangeSet). - [EntityFrameworkApi](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFrameworkCore/EntityFrameworkApi.md): Represents an API over a DbContext. - [IEntityFrameworkApi](https://easyaf.dev/restier/api-reference/Microsoft/Restier/EntityFrameworkCore/IEntityFrameworkApi.md): Interface for Entity Framework Api instances. Makes easy retrieval of the DbContext possible. ##### Spatial - [Overview](https://easyaf.dev/restier/api-reference/Microsoft/Spatial/index.md): Summary of the Microsoft.Spatial Namespace - [GeographyLineString](https://easyaf.dev/restier/api-reference/Microsoft/Spatial/GeographyLineString.md): Extension methods for GeographyLineString from Microsoft.Spatial - [GeographyPoint](https://easyaf.dev/restier/api-reference/Microsoft/Spatial/GeographyPoint.md): Extension methods for GeographyPoint from Microsoft.Spatial #### System ##### Data ###### Entity ###### Spatial - [Overview](https://easyaf.dev/restier/api-reference/System/Data/Entity/Spatial/index.md): Summary of the System.Data.Entity.Spatial Namespace - [DbGeography](https://easyaf.dev/restier/api-reference/System/Data/Entity/Spatial/DbGeography.md): Extension methods for DbGeography from EntityFramework - [AI for REST APIs (147 pages)](https://easyaf.dev/_llms/ai-for-rest-apis.md): Documentation for AI for REST APIs. ## Blazor UI ### Getting Started - [Blazoressentials](https://easyaf.dev/blazoressentials/index.md) ### Guides - [Guides](https://easyaf.dev/blazoressentials/guides/index.md): Learn how to build powerful Blazor applications with BlazorEssentials #### Client-Side Databases - [Client-Side Databases](https://easyaf.dev/blazoressentials/guides/databases/index.md): Store data locally in the browser with IndexedDB or TursoDb - [IndexedDB](https://easyaf.dev/blazoressentials/guides/databases/indexeddb.md): NoSQL key-value storage for Blazor WebAssembly applications - [TursoDb](https://easyaf.dev/blazoressentials/guides/databases/tursodb.md): Build local-first Blazor applications with SQLite and optional Turso Cloud sync ### API Reference #### CloudNimble ##### BlazorEssentials - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/index.md): Summary of the CloudNimble.BlazorEssentials Namespace - [_Imports](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/_Imports.md) - [AppStateBase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/AppStateBase.md): A base class to control application-wide state in a Blazor app. - [BlazorObservable](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/BlazorObservable.md): A base class for Blazor ViewModels to implement [INotifyPropertyChanged](https://learn.microsoft.com/dotnet/api/system.componentmodel.inotifypropertychanged)... - [Html](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Html.md): A port of the ASP.NET MVC HtmlHelper class to Blazor. - [InterfaceElement](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/InterfaceElement.md): Represents the basic parts of any HTML element. - [JsModule](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/JsModule.md): A wrapper that makes it easier to dynamically import JavaScript modules in Blazor. Can be used as the foundation to build strongly-typed .NET wr... - [LoadingStatus](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/LoadingStatus.md): Outlines the different phases of the loading cycle. - [StateHasChangedConfig](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/StateHasChangedConfig.md) - [StateHasChangedDebugMode](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/StateHasChangedDebugMode.md): Defines how BlazorObservables are monitored to reduce the number of times StateHasChanged is fired. - [StateHasChangedDelayMode](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/StateHasChangedDelayMode.md): Defines how BlazorObservables are monitored to reduce the number of times StateHasChanged is fired. - [ViewModelBase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/ViewModelBase.md): A base class for your Blazor MVVM implementation that gives you access to all the useful stuff Blazor and BlazorEssentials inject into the app. ###### Authentication - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Authentication/index.md): Summary of the CloudNimble.BlazorEssentials.Authentication Namespace - [BlazorEssentialsAuthorizationMessageHandler](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Authentication/BlazorEssentialsAuthorizationMessageHandler.md) ###### Breakdance - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Breakdance/index.md): Summary of the CloudNimble.BlazorEssentials.Breakdance Namespace - [BlazorEssentialsTestBase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Breakdance/BlazorEssentialsTestBase.md) - [TestableAuthenticationStateProvider](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Breakdance/TestableAuthenticationStateProvider.md) - [TestableWebAssemblyHostEnvironment](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Breakdance/TestableWebAssemblyHostEnvironment.md) - [ViewModelTestHelpers](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Breakdance/ViewModelTestHelpers.md) ###### Controls - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Controls/index.md): Summary of the CloudNimble.BlazorEssentials.Controls Namespace - [LoadingContainer](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Controls/LoadingContainer.md) ###### IndexedDb - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/index.md): Summary of the CloudNimble.BlazorEssentials.IndexedDb Namespace - [IndexAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexAttribute.md) - [IndexedDbDatabase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbDatabase.md): Provides functionality for accessing IndexedDB from Blazor application - [IndexedDbException](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbException.md) - [IndexedDbIndex](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbIndex.md): Defines an Index for a given object store. - [IndexedDbNotFoundException](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbNotFoundException.md) - [IndexedDbObjectStore](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbObjectStore.md): Defines a store to add to database - [KeyRange](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/KeyRange.md) - [ObjectStoreAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/ObjectStoreAttribute.md): Helps define the structure of a [IndexedDbObjectStore](/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/IndexedDbObjectStore) so you don't have to subcl... ###### Schema - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/Schema/index.md): Summary of the CloudNimble.BlazorEssentials.IndexedDb.Schema Namespace - [IndexedDbDatabaseDefinition](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/Schema/IndexedDbDatabaseDefinition.md) - [IndexedDbIndexDefinition](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/Schema/IndexedDbIndexDefinition.md) - [IndexedDbObjectStoreDefinition](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/IndexedDb/Schema/IndexedDbObjectStoreDefinition.md) ###### Merlin - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/index.md): Summary of the CloudNimble.BlazorEssentials.Merlin Namespace - [Operation](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/Operation.md): A class with observable elements to describe the different components of reporting operation progress to an end user. - [OperationStatus](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/OperationStatus.md) - [OperationStatusDisplay](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/OperationStatusDisplay.md): An object to store display values represented by specific statuses for an [Operation](/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/Operation) or [Opera... - [OperationStep](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/OperationStep.md) - [OperationStepStatus](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/OperationStepStatus.md) - [Wizard](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/Wizard.md) - [WizardPane](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/WizardPane.md) - [WizardPaneStatus](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/WizardPaneStatus.md) - [WizardPaneType](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Merlin/WizardPaneType.md) ###### Navigation - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/index.md): Summary of the CloudNimble.BlazorEssentials.Navigation Namespace - [ActionButton](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/ActionButton.md): Defines a button that can be used to trigger an action in a User Interface. Useful for binding aq group of actions programmatically. - [ActionButton](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/ActionButton.md): Defines a button that can be used to trigger an action in a User Interface. Useful for binding aq group of actions programmatically. - [ActionButtonBase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/ActionButtonBase.md): Defines a button that can be used to trigger an action in a User Interface. Useful for binding aq group of actions programmatically. - [NavigationHistory](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/NavigationHistory.md) - [NavigationItem](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/NavigationItem.md): Defines an app navigation structure suitable for binding to navigation menus. - [ScrollRestorationType](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Navigation/ScrollRestorationType.md): Represents the scroll restoration behavior on history navigation. ###### Server ###### Middleware - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Server/Middleware/index.md): Summary of the CloudNimble.BlazorEssentials.Server.Middleware Namespace - [CrossOriginIsolationMiddleware](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Server/Middleware/CrossOriginIsolationMiddleware.md): Middleware that adds Cross-Origin Isolation headers (COOP and COEP) to responses. These headers are required for features like SharedArrayBuffer... - [CrossOriginIsolationOptions](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Server/Middleware/CrossOriginIsolationOptions.md): Configuration options for the [CrossOriginIsolationMiddleware](/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Server/Middleware/CrossOriginIsolationMiddleware). ###### Threading - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Threading/index.md): Summary of the CloudNimble.BlazorEssentials.Threading Namespace - [DelayDispatcher](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/Threading/DelayDispatcher.md): Provides methods to reduce the number of events that are fired, usually so that rapid, imperceptible changes are ignored. ###### TursoDb - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/index.md): Summary of the CloudNimble.BlazorEssentials.TursoDb Namespace - [ColumnAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/ColumnAttribute.md): Specifies the column name and optional type for a property. If not specified, the property name is used as the column name. - [IndexAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/IndexAttribute.md): Creates an index on the specified column. - [ITursoDbSet](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/ITursoDbSet.md): Interface for TursoDbSet, used for database discovery. - [NotMappedAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/NotMappedAttribute.md): Excludes a property from database mapping. Properties marked with this attribute will not be included in table creation or CRUD operations. - [PrimaryKeyAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/PrimaryKeyAttribute.md): Marks a property as the primary key of the table. - [TableAttribute](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TableAttribute.md): Specifies the table name for an entity class. If not specified, the class name is used as the table name. - [TursoDatabase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoDatabase.md): Base class for Turso databases. Inherit from this class and add `TursoDbSet`1` properties for each entity type. - [TursoDatabaseOptions](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoDatabaseOptions.md): Configuration options for a Turso database. - [TursoDbException](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoDbException.md): Represents an error that occurred during a Turso database operation. - [TursoDbSet](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoDbSet.md): Represents a collection of entities of a specific type in the database. Provides CRUD operations and querying capabilities. - [TursoPreparedStatement](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoPreparedStatement.md): Represents a prepared SQL statement that can be executed multiple times with different parameters for improved performance. - [TursoPreparedStatement](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoPreparedStatement.md): Represents a prepared SQL statement that can be executed multiple times with different parameters for improved performance. - [TursoResult](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoResult.md): Represents the result of a SQL execution operation. - [TursoSyncDatabase](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoSyncDatabase.md): Base class for sync-enabled Turso databases. Extends [TursoDatabase](/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoDatabase) with Tur... - [TursoSyncOptions](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoSyncOptions.md): Configuration options for Turso Cloud sync. - [TursoSyncResult](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoSyncResult.md): Represents the result of a sync operation. - [TursoTransaction](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/TursoTransaction.md): Represents a database transaction that can be committed or rolled back. Implements IAsyncDisposable for automatic rollback if not committed. ###### Query - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Query/index.md): Summary of the CloudNimble.BlazorEssentials.TursoDb.Query Namespace - [TursoQueryBuilder](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Query/TursoQueryBuilder.md): Provides fluent query building capabilities for TursoDbSet. ###### Schema - [Overview](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Schema/index.md): Summary of the CloudNimble.BlazorEssentials.TursoDb.Schema Namespace - [ColumnMetadata](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Schema/ColumnMetadata.md): Contains metadata about a column in a table. - [EntityMetadata](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Schema/EntityMetadata.md): Contains metadata about an entity type for database operations. - [EntityMetadataCache](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Schema/EntityMetadataCache.md): Caches entity metadata for performance. - [SqlGenerator](https://easyaf.dev/blazoressentials/api-reference/CloudNimble/BlazorEssentials/TursoDb/Schema/SqlGenerator.md): Generates SQL DDL statements from entity metadata. #### Microsoft ##### AspNetCore ###### Builder - [Overview](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Builder/index.md): Summary of the Microsoft.AspNetCore.Builder Namespace - [IApplicationBuilder](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Builder/IApplicationBuilder.md): Extension methods for IApplicationBuilder from Microsoft.AspNetCore.Http.Abstractions ###### Components ###### Forms - [Overview](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Components/Forms/index.md): Summary of the Microsoft.AspNetCore.Components.Forms Namespace - [EditContext](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Components/Forms/EditContext.md): Extension methods for EditContext from Microsoft.AspNetCore.Components.Forms ###### WebAssembly ###### Hosting - [Overview](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Components/WebAssembly/Hosting/index.md): Summary of the Microsoft.AspNetCore.Components.WebAssembly.Hosting Namespace - [WebAssemblyHostBuilder](https://easyaf.dev/blazoressentials/api-reference/Microsoft/AspNetCore/Components/WebAssembly/Hosting/WebAssemblyHostBuilder.md): Extension methods for WebAssemblyHostBuilder from Microsoft.AspNetCore.Components.WebAssembly ##### Extensions ###### Hosting - [Overview](https://easyaf.dev/blazoressentials/api-reference/Microsoft/Extensions/Hosting/index.md): Summary of the Microsoft.Extensions.Hosting Namespace - [IHostBuilder](https://easyaf.dev/blazoressentials/api-reference/Microsoft/Extensions/Hosting/IHostBuilder.md): Extension methods for IHostBuilder from Microsoft.Extensions.Hosting.Abstractions #### System ##### Collections ###### Generic - [Overview](https://easyaf.dev/blazoressentials/api-reference/System/Collections/Generic/index.md): Summary of the System.Collections.Generic Namespace - [IEnumerable](https://easyaf.dev/blazoressentials/api-reference/System/Collections/Generic/IEnumerable.md): Extension methods for IEnumerable from System.Runtime ## Async Events ### Getting Started - [Introducing SimpleMessageBus](https://easyaf.dev/simplemessagebus/index.md): A simple, lightweight message bus for .NET applications - [Getting Started with SimpleMessageBus](https://easyaf.dev/simplemessagebus/quickstart.md): Get up and running quickly is as easy as 1-2-3. - [Installation](https://easyaf.dev/simplemessagebus/installation.md): Detailed installation instructions for SimpleMessageBus ### Guides - [Configuration Guide](https://easyaf.dev/simplemessagebus/guides/configuration.md): Complete guide to configuring SimpleMessageBus in your application - [Core Concepts](https://easyaf.dev/simplemessagebus/guides/overview.md): Understanding the fundamental concepts of SimpleMessageBus - [Testing Guide](https://easyaf.dev/simplemessagebus/guides/testing.md): Complete guide to testing SimpleMessageBus applications ### Providers - [Amazon SQS Provider](https://easyaf.dev/simplemessagebus/providers/amazon-sqs.md): Configure SimpleMessageBus with Amazon Simple Queue Service - [Azure Storage Queue Provider](https://easyaf.dev/simplemessagebus/providers/azure-storage-queue.md): Configure SimpleMessageBus with Azure Storage Queues - [Providers Overview](https://easyaf.dev/simplemessagebus/providers/overview.md): Choose the right message transport provider for your needs ### API Reference #### CloudNimble ##### SimpleMessageBus ###### Amazon ###### Core - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Amazon/Core/index.md): Summary of the CloudNimble.SimpleMessageBus.Amazon.Core Namespace - [AmazonSQSOptions](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Amazon/Core/AmazonSQSOptions.md): Defines the configuration options available for SimpleMessageBus queues backed by Amazon SQS. ###### Breakdance - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Breakdance/index.md): Summary of the CloudNimble.SimpleMessageBus.Breakdance Namespace - [TestableMessagePublisher](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Breakdance/TestableMessagePublisher.md): A test double for IMessagePublisher that captures published messages for assertions. Used in testing scenarios to verify that expected messages w... ###### Core - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/index.md): Summary of the CloudNimble.SimpleMessageBus.Core Namespace - [AzureStorageQueueConstants](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/AzureStorageQueueConstants.md): A set of helpers to convert file system-related magic strings to compiled references. - [AzureStorageQueueEncoding](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/AzureStorageQueueEncoding.md): Determines how QueueMessage.Body is represented in HTTP requests and responses. - [AzureStorageQueueOptions](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/AzureStorageQueueOptions.md): Specifies the options required to leverage Azure Queue Storage as the SimpleMessageBus backing queue. - [FileSystemConstants](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/FileSystemConstants.md): A set of helpers to convert file system-related magic strings to compiled references. - [FileSystemOptions](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/FileSystemOptions.md): Specifies the options required to leverage the local file system as the SimpleMessageBus backing queue. - [IMessage](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessage.md): Defines the required composition of every Message published to the SimpleMessageBus. - [IMessageHandler](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessageHandler.md): Defines the functionality required for all [IMessage](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessage) processing handlers. - [IMetadataAware](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMetadataAware.md): Defines a message that supports metadata for passing data between handlers in the processing pipeline. - [ITrackable](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/ITrackable.md): Defines a message that can track its parent for message lineage and correlation across the processing chain. - [KafkaAuthenticationMode](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/KafkaAuthenticationMode.md): SASL authentication mechanisms for Kafka. - [KafkaBrokerProtocol](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/KafkaBrokerProtocol.md): Kafka security protocol options. - [KafkaConstants](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/KafkaConstants.md): Constants for Kafka topic and consumer group configuration placeholders. - [KafkaOptions](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/KafkaOptions.md): Specifies the options required to leverage Apache Kafka as the SimpleMessageBus backing queue. - [MessageBase](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/MessageBase.md): Base class providing a complete implementation of common message functionality. - [MessageEnvelope](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/MessageEnvelope.md): Represents a wrapper for an [IMessage](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessage) that will be published to the SimpleMessageBus Queue. ###### Dispatch - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/index.md): Summary of the CloudNimble.SimpleMessageBus.Dispatch Namespace - [AmazonSQSNameResolver](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/AmazonSQSNameResolver.md): A [INameResolver](https://learn.microsoft.com/dotnet/api/microsoft.azure.webjobs.inameresolver) for SimpleMessageBus instances backed by Amazon SQS. - [AzureStorageQueueProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/AzureStorageQueueProcessor.md): Processes messages from Azure Storage Queues and dispatches them to registered message handlers. - [FileSystemQueueProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/FileSystemQueueProcessor.md): Processes queue items stored in the local file system and dispatches them to all [IMessageHandler](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessageH... - [IMessageDispatcher](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IMessageDispatcher.md): Defines the required composition of every Dispatcher used by SimpleMessageBus to send [MessageEnvelope](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/Mess... - [IQueueProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IQueueProcessor.md): Defines the contract for queue processing components in the SimpleMessageBus system. - [OrderedMessageDispatcher](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/OrderedMessageDispatcher.md): An [IMessageDispatcher](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IMessageDispatcher) implementation that processes the messages in the order the ... - [ParallelMessageDispatcher](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/ParallelMessageDispatcher.md): An [IMessageDispatcher](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IMessageDispatcher) implementation that processes the messages in parallel, rega... ###### Amazon - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Amazon/index.md): Summary of the CloudNimble.SimpleMessageBus.Dispatch.Amazon Namespace - [AmazonSQSConstants](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Amazon/AmazonSQSConstants.md): A set of constants for SimpleMessageBus instances backed by Amazon SQS. - [AmazonSQSProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Amazon/AmazonSQSProcessor.md): Processes messages from Amazon SQS queues for SimpleMessageBus. ###### IndexedDb - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IndexedDb/index.md): Summary of the CloudNimble.SimpleMessageBus.Dispatch.IndexedDb Namespace - [IndexedDbQueueProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/IndexedDb/IndexedDbQueueProcessor.md): Processes queue items stored in an IndexedDB database and dispatches them to all [IMessageHandler](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Core/IMessageH... ###### Kafka - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Kafka/index.md): Summary of the CloudNimble.SimpleMessageBus.Dispatch.Kafka Namespace - [KafkaProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Kafka/KafkaProcessor.md): Processes messages from Apache Kafka and dispatches them to registered message handlers. ###### Triggers - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/index.md): Summary of the CloudNimble.SimpleMessageBus.Dispatch.Triggers Namespace - [ISimpleMessageBusFileProcessorFactory](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/ISimpleMessageBusFileProcessorFactory.md): Factory interface for creating [SimpleMessageBusFileProcessor](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/SimpleMessageBusFileProcessor) i... - [SimpleMessageBusFileAttribute](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/SimpleMessageBusFileAttribute.md): Attribute used to bind a parameter to a file. - [SimpleMessageBusFileProcessor](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/SimpleMessageBusFileProcessor.md): Default file processor used by [FileTriggerAttribute](https://learn.microsoft.com/dotnet/api/microsoft.azure.webjobs.filetriggerattribute). - [SimpleMessageBusFileProcessorFactoryContext](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/SimpleMessageBusFileProcessorFactoryContext.md): Context input for [ISimpleMessageBusFileProcessorFactory](/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/ISimpleMessageBusFileProcessorFactory) - [SimpleMessageBusFileTriggerAttribute](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/Dispatch/Triggers/SimpleMessageBusFileTriggerAttribute.md): Attribute used to mark a job function that should be invoked based on file events. ###### IndexedDb ###### Core - [Overview](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/IndexedDb/Core/index.md): Summary of the CloudNimble.SimpleMessageBus.IndexedDb.Core Namespace - [IndexedDbConstants](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/IndexedDb/Core/IndexedDbConstants.md): A set of helpers to convert file system-related magic strings to compiled references. - [IndexedDbOptions](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/IndexedDb/Core/IndexedDbOptions.md): Specifies the options required to leverage a browser's IndexedDB instance as the SimpleMessageBus backing queue. - [SimpleMessageBusDb](https://easyaf.dev/simplemessagebus/api-reference/CloudNimble/SimpleMessageBus/IndexedDb/Core/SimpleMessageBusDb.md): Represents the IndexedDB database structure for SimpleMessageBus in Blazor WebAssembly applications. #### Microsoft ##### AspNetCore ###### Components ###### WebAssembly ###### Hosting - [Overview](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/AspNetCore/Components/WebAssembly/Hosting/index.md): Summary of the Microsoft.AspNetCore.Components.WebAssembly.Hosting Namespace - [WebAssemblyHostBuilder](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/AspNetCore/Components/WebAssembly/Hosting/WebAssemblyHostBuilder.md): Extension methods for WebAssemblyHostBuilder from Microsoft.AspNetCore.Components.WebAssembly ##### Azure ###### WebJobs - [Overview](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/Azure/WebJobs/index.md): Summary of the Microsoft.Azure.WebJobs Namespace - [IWebJobsBuilder](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/Azure/WebJobs/IWebJobsBuilder.md): Extension methods for IWebJobsBuilder from Microsoft.Azure.WebJobs.Host ##### Extensions ###### Hosting - [Overview](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/Extensions/Hosting/index.md): Summary of the Microsoft.Extensions.Hosting Namespace - [IHostBuilder](https://easyaf.dev/simplemessagebus/api-reference/Microsoft/Extensions/Hosting/IHostBuilder.md): Extension methods for IHostBuilder from Microsoft.Extensions.Hosting.Abstractions #### System - [Overview](https://easyaf.dev/simplemessagebus/api-reference/System/index.md): Summary of the System Namespace - [Type](https://easyaf.dev/simplemessagebus/api-reference/System/Type.md): Extension methods for Type from System.Runtime ##### Collections ###### Concurrent - [Overview](https://easyaf.dev/simplemessagebus/api-reference/System/Collections/Concurrent/index.md): Summary of the System.Collections.Concurrent Namespace - [ConcurrentDictionary](https://easyaf.dev/simplemessagebus/api-reference/System/Collections/Concurrent/ConcurrentDictionary.md): Extension methods for ConcurrentDictionary from System.Collections.Concurrent ## Testing ### Getting Started - [Breakdance - Test Real Things](https://easyaf.dev/breakdance/index.md): No Fakes. No Mocks. A .NET testing framework that eliminates the need for mocking by testing against real infrastructure. - [Why Breakdance?](https://easyaf.dev/breakdance/why-breakdance.md): Understand the philosophy behind Test Real Things and why Breakdance eliminates mocking from your test suite. - [Better Testing in 5 Minutes with Breakdance](https://easyaf.dev/breakdance/quickstart.md): Get up and running quickly is as easy as 1-2-3. ### Guides - [Guides](https://easyaf.dev/breakdance/guides/index.md): Step-by-step tutorials for testing real things in your .NET applications with Breakdance. - [Testing with Azure Storage (Azurite)](https://easyaf.dev/breakdance/guides/testing-azure-storage.md): Learn how to write integration tests against Azure Blob, Queue, and Table Storage using the Azurite emulator with Breakdance. #### Web - [Web & API Testing](https://easyaf.dev/breakdance/guides/web/index.md): Test HTTP APIs and web services with in-memory servers, request snapshots, and response snapshots. - [ASP.NET Classic Web API Testing](https://easyaf.dev/breakdance/guides/web/aspnet-classic-rest.md): Test ASP.NET WebAPI 2 controllers on .NET Framework with fast, in-memory HTTP testing. - [ASP.NET Core API Testing](https://easyaf.dev/breakdance/guides/web/aspnet-core-rest.md): Test ASP.NET Core APIs with in-memory TestServer for fast, reliable unit and integration tests. ##### Snapshots - [Snapshots: Test Real Things](https://easyaf.dev/breakdance/guides/web/snapshots/index.md): Capture and replay real HTTP requests and responses for fast, deterministic, and reliable API testing. - [Testing with .http Files](https://easyaf.dev/breakdance/guides/web/snapshots/requests.md): Write API tests using Visual Studio's .http file format with variables, environments, and request chaining. - [Response Snapshots](https://easyaf.dev/breakdance/guides/web/snapshots/responses.md): Capture real HTTP responses from APIs and replay them in tests for fast, deterministic, and offline-capable testing. ### API Reference #### CloudNimble ##### Breakdance ###### AspNetCore - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/index.md): Summary of the CloudNimble.Breakdance.AspNetCore Namespace - [AspNetCoreBreakdanceTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/AspNetCoreBreakdanceTestBase.md): A base class for building unit tests for AspNetCore APIs that automatically maintains a [TestServer](https://learn.microsoft.com/dotnet/api/microsoft.aspnetc... - [AspNetCoreBreakdanceTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/AspNetCoreBreakdanceTestBase.md): A base class for building unit tests for AspNetCore APIs that automatically maintains a [TestServer](https://learn.microsoft.com/dotnet/api/microsoft.aspnetc... - [AspNetCoreTestHelpers](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/AspNetCoreTestHelpers.md): Helper methods for creating testable resources for AspNetCore. - [HttpClientHelpers](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/HttpClientHelpers.md): Helper methods for dealing with [HttpRequestMessage](https://learn.microsoft.com/dotnet/api/system.net.http.httprequestmessage). - [WebApiConstants](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/AspNetCore/WebApiConstants.md): A set of constants used by BreakDance.WebApi to simplify the configuration of test runs. ###### Assemblies - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/index.md): Summary of the CloudNimble.Breakdance.Assemblies Namespace - [AssemblyConstants](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/AssemblyConstants.md) - [BreakdanceManifestGeneratorAttribute](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/BreakdanceManifestGeneratorAttribute.md): Tells Breakdance that the attributed method generates a manifest file that is used to test functional outputs. - [BreakdanceTestAssemblyAttribute](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/BreakdanceTestAssemblyAttribute.md): Tells Breakdance that the attributed method generates a manifest file that is used to test functional outputs. - [BreakdanceTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/BreakdanceTestBase.md): A base class for unit tests that maintains an [IHost](https://learn.microsoft.com/dotnet/api/microsoft.extensions.hosting.ihost) with configuration and a Dep... - [MemberComparer](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/MemberComparer.md): Legacy class used to compare members. - [MemberDefinition](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/MemberDefinition.md): Allows for the storage of metadata information for a specific type member. - [ObjectTypeComparer](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/ObjectTypeComparer.md): Legacy class used to compare types. - [PrivateObject](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/PrivateObject.md): This class represents the live NON public INTERNAL object in the system - [PrivateType](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/PrivateType.md): This class represents a private class for the Private Accessor functionality. - [PublicApiHelpers](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/PublicApiHelpers.md) - [TypeComparer](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/TypeComparer.md): Legacy class used to compare members. - [TypeDefinition](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/TypeDefinition.md) ###### Http - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/index.md): Summary of the CloudNimble.Breakdance.Assemblies.Http Namespace - [ResponseSnapshotCaptureHandler](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/ResponseSnapshotCaptureHandler.md): A [DelegatingHandler](https://learn.microsoft.com/dotnet/api/system.net.http.delegatinghandler) that captures HTTP responses and saves them as snapshot files. - [ResponseSnapshotHandlerBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/ResponseSnapshotHandlerBase.md): Base class for Response Snapshot handlers that enable testing with real captured HTTP responses. - [ResponseSnapshotReplayHandler](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/ResponseSnapshotReplayHandler.md): A [DelegatingHandler](https://learn.microsoft.com/dotnet/api/system.net.http.delegatinghandler) that replays previously captured HTTP responses from snapshot... - [TestCacheDelegatingHandlerBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/TestCacheDelegatingHandlerBase.md): Base class for implementation of TestCache handlers for unit testing. - [TestCacheReadDelegatingHandler](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/TestCacheReadDelegatingHandler.md): Handler for returning HTTP responses from cached files. - [TestCacheWriteDelegatingHandler](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Assemblies/Http/TestCacheWriteDelegatingHandler.md): Handler for capturing HTTP responses and writing them to files. ###### Azurite - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Azurite/index.md): Summary of the CloudNimble.Breakdance.Azurite Namespace - [AzuriteBreakdanceTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Azurite/AzuriteBreakdanceTestBase.md): Base class for tests that require an Azurite instance. Each derived class must declare its own static [AzuriteInstance](/breakdance/api-reference/CloudNimb... - [AzuriteConfiguration](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Azurite/AzuriteConfiguration.md): Configuration options for an Azurite instance. - [AzuriteInstance](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Azurite/AzuriteInstance.md): Represents a running Azurite instance with process lifecycle management. - [AzuriteServiceType](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Azurite/AzuriteServiceType.md): Specifies which Azurite services to start. ###### Blazor - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Blazor/index.md): Summary of the CloudNimble.Breakdance.Blazor Namespace - [BlazorBreakdanceTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Blazor/BlazorBreakdanceTestBase.md): A base class for building BUnit unit tests for Blazor apps that automatically handles basic registration stuff for you. ###### DotHttp - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/index.md): Summary of the CloudNimble.Breakdance.DotHttp Namespace - [DotHttpAssertionException](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/DotHttpAssertionException.md): Exception thrown when a DotHttp assertion fails. - [DotHttpAssertions](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/DotHttpAssertions.md): Provides smart assertion helpers for HTTP responses that go beyond simple status code checking. - [DotHttpFileParser](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/DotHttpFileParser.md): Parses .http files into structured [DotHttpFile](/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/DotHttpFile) objects. - [DotHttpTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/DotHttpTestBase.md): Base class for generated .http file tests. Provides HTTP client management, variable resolution, and response capture for request chaining. - [EnvironmentLoader](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/EnvironmentLoader.md): Loads and parses http-client.env.json environment files. - [ResponseCapture](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/ResponseCapture.md): Captures HTTP responses from named requests for use in request chaining. - [VariableResolver](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/VariableResolver.md): Resolves `{{variable}}` placeholders in .http file content. ###### Generator - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Generator/index.md): Summary of the CloudNimble.Breakdance.DotHttp.Generator Namespace - [DotHttpSourceGenerator](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Generator/DotHttpSourceGenerator.md): Source generator that creates test classes from .http files. ###### Models - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/index.md): Summary of the CloudNimble.Breakdance.DotHttp.Models Namespace - [DotHttpEnvironment](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/DotHttpEnvironment.md): Represents the configuration from an http-client.env.json file. - [DotHttpFile](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/DotHttpFile.md): Represents a complete parsed .http file containing variables and requests. - [DotHttpRequest](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/DotHttpRequest.md): Represents a single HTTP request parsed from a .http file. - [EnvironmentValue](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/DotHttp/Models/EnvironmentValue.md): Represents a value in the environment configuration. ###### Extensions ###### MSTest2 - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Extensions/MSTest2/index.md): Summary of the CloudNimble.Breakdance.Extensions.MSTest2 Namespace - [BreakdanceMSTestBase](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Extensions/MSTest2/BreakdanceMSTestBase.md): A base class for testing that provides an MSTest [BreakdanceMSTestBase.TestContext](/breakdance/api-reference/CloudNimble/Breakdance/Extensions/MSTest2/BreakdanceMSTest... ###### Tools - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Tools/index.md): Summary of the CloudNimble.Breakdance.Tools Namespace - [ColorConsole](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/Tools/ColorConsole.md): Console Color Helper class that provides coloring to individual commands ###### WebApi - [Overview](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/WebApi/index.md): Summary of the CloudNimble.Breakdance.WebApi Namespace - [HttpClientHelpers](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/WebApi/HttpClientHelpers.md) - [WebApiConstants](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/WebApi/WebApiConstants.md): A set of constants used by BreakDance.WebApi to simplify the configuration of test runs. - [WebApiTestHelpers](https://easyaf.dev/breakdance/api-reference/CloudNimble/Breakdance/WebApi/WebApiTestHelpers.md): A set of methods that make it easier to pull out WebApi runtime components for unit testing. #### Microsoft ##### Extensions ###### DependencyInjection - [Overview](https://easyaf.dev/breakdance/api-reference/Microsoft/Extensions/DependencyInjection/index.md): Summary of the Microsoft.Extensions.DependencyInjection Namespace - [ServiceCollection](https://easyaf.dev/breakdance/api-reference/Microsoft/Extensions/DependencyInjection/ServiceCollection.md): Extension methods for ServiceCollection from Microsoft.Extensions.DependencyInjection.Abstractions ###### Hosting - [Overview](https://easyaf.dev/breakdance/api-reference/Microsoft/Extensions/Hosting/index.md): Summary of the Microsoft.Extensions.Hosting Namespace - [IHostBuilder](https://easyaf.dev/breakdance/api-reference/Microsoft/Extensions/Hosting/IHostBuilder.md): Extension methods for IHostBuilder from Microsoft.Extensions.Hosting.Abstractions ##### VisualStudio ###### TestTools ###### UnitTesting - [Overview](https://easyaf.dev/breakdance/api-reference/Microsoft/VisualStudio/TestTools/UnitTesting/index.md): Summary of the Microsoft.VisualStudio.TestTools.UnitTesting Namespace - [TestContext](https://easyaf.dev/breakdance/api-reference/Microsoft/VisualStudio/TestTools/UnitTesting/TestContext.md): Extension methods for TestContext from MSTest.TestFramework.Extensions #### MimeTypes - [Overview](https://easyaf.dev/breakdance/api-reference/MimeTypes/index.md): Summary of the MimeTypes Namespace - [MimeTypeMap](https://easyaf.dev/breakdance/api-reference/MimeTypes/MimeTypeMap.md): Class MimeTypeMap. #### System - [Overview](https://easyaf.dev/breakdance/api-reference/System/index.md): Summary of the System Namespace - [IServiceProvider](https://easyaf.dev/breakdance/api-reference/System/IServiceProvider.md): Extension methods for IServiceProvider from System.ComponentModel - [Object](https://easyaf.dev/breakdance/api-reference/System/Object.md): Extension methods for Object from System.Private.CoreLib ##### Net ###### Http - [Overview](https://easyaf.dev/breakdance/api-reference/System/Net/Http/index.md): Summary of the System.Net.Http Namespace - [HttpClient](https://easyaf.dev/breakdance/api-reference/System/Net/Http/HttpClient.md): Extension methods for HttpClient from System.Net.Http ##### Reflection - [Overview](https://easyaf.dev/breakdance/api-reference/System/Reflection/index.md): Summary of the System.Reflection Namespace - [ConstructorInfo](https://easyaf.dev/breakdance/api-reference/System/Reflection/ConstructorInfo.md): Extension methods for ConstructorInfo from System.Runtime - [FieldInfo](https://easyaf.dev/breakdance/api-reference/System/Reflection/FieldInfo.md): Extension methods for FieldInfo from System.Runtime - [MethodInfo](https://easyaf.dev/breakdance/api-reference/System/Reflection/MethodInfo.md): Extension methods for MethodInfo from System.Runtime ##### Web ###### Http - [Overview](https://easyaf.dev/breakdance/api-reference/System/Web/Http/index.md): Summary of the System.Web.Http Namespace - [HttpConfiguration](https://easyaf.dev/breakdance/api-reference/System/Web/Http/HttpConfiguration.md): Extension methods for HttpConfiguration from System.Web.Http - [Building for Claude (98 pages)](https://easyaf.dev/_llms/building-for-claude.md): Documentation for Building for Claude. > The links below point to documentation indexes. Follow each `/_llms/` index recursively until you reach documentation pages. ## Indexes - [Core Framework (155 pages)](https://easyaf.dev/_llms/core-framework.md): Documentation for Core Framework. - [AI for REST APIs (147 pages)](https://easyaf.dev/_llms/ai-for-rest-apis.md): Documentation for AI for REST APIs. - [Building for Claude (98 pages)](https://easyaf.dev/_llms/building-for-claude.md): Documentation for Building for Claude.