Schemata.Modular
1.0.0-preview.24207.14
See the version list below for details.
dotnet add package Schemata.Modular --version 1.0.0-preview.24207.14
NuGet\Install-Package Schemata.Modular -Version 1.0.0-preview.24207.14
<PackageReference Include="Schemata.Modular" Version="1.0.0-preview.24207.14" />
paket add Schemata.Modular --version 1.0.0-preview.24207.14
#r "nuget: Schemata.Modular, 1.0.0-preview.24207.14"
// Install Schemata.Modular as a Cake Addin #addin nuget:?package=Schemata.Modular&version=1.0.0-preview.24207.14&prerelease // Install Schemata.Modular as a Cake Tool #tool nuget:?package=Schemata.Modular&version=1.0.0-preview.24207.14&prerelease
Schemata
Application Framework aims on modular business applications.
Quick Start
dotnet new web
dotnet add package --prerelease Schemata.Application.Complex.Targets
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
var builder = WebApplication.CreateBuilder(args)
.UseSchemata(schema => {
schema.UseLogging();
schema.UseDeveloperExceptionPage();
schema.UseForwardedHeaders();
schema.UseHttps();
schema.UseCookiePolicy();
schema.UseRouting();
schema.UseCors();
schema.UseAuthentication(authenticate => {
authenticate.AddCookie();
});
schema.ConfigureServices(services => {
services.AddDistributedMemoryCache();
});
schema.UseSession();
schema.UseControllers();
schema.UseModular();
schema.UseAuthorization(options => {
options.AddEphemeralEncryptionKey()
.AddEphemeralSigningKey();
})
.UseCodeFlow()
.UseRefreshTokenFlow()
.UseIntrospection();
schema.UseWorkflow();
});
var app = builder.Build();
app.Run();
Fields
Features
Features are components that can be added to the application startup.
All features must implement the ISimpleFeature
interface.
Features have Order
and Priority
, which are Int32
values. The Order
is used to determine the order
to ConfigureServices
methods are called. The Priority
is used to determine the order
to Configure<Application|Endpoints>
methods are called.
Order
and Priority
between [0, 1_000_000_000)
are reserved for built-in and Schemata extensions.
Built-in Features
A built-in feature can be activated by calling the Use
method on the SchemataBuilder
instance, they may have
additional configuration methods.
Priority | Feature | Description |
---|---|---|
100_110_000 | Logging | Asp.Net Logging Middleware |
100_120_000 | HttpLogging | Asp.Net HTTP Logging Middleware |
100_130_000 | W3CLogging | Asp.Net W3C Logging Middleware |
110_000_000 | DeveloperExceptionPage | Asp.Net Developer Exception Page Middleware |
110_100_000 | ForwardedHeaders | Asp.Net Forwarded Headers Middleware |
120_000_000 | Https | Asp.Net HTTPS & HTTPS Redirection Middlewares |
130_000_000 | CookiePolicy | Asp.Net Cookie Policy Middleware |
140_000_000 | Routing | Asp.Net Routing Middleware |
141_100_000 | Quota | Asp.Net Rate Limiter Middleware |
150_000_000 | Cors | Asp.Net CORS Middleware |
160_000_000 | Authentication | Asp.Net Authentication & Authorization Middlewares |
170_000_000 | Session | Asp.Net Session Middleware |
210_000_000 | Controllers | Asp.Net MVC Middlewares, without Views |
Extension Features
An extension feature can be activated like a built-in feature.
Priority | Package | Feature | Description |
---|---|---|---|
310_000_000 | Schemata.Identity.Foundation | Identity | Schemata Identity Foundation |
320_000_000 | Schemata.Authorization.Foundation | Authorization | Schemata Authorization Foundation |
330_000_000 | Schemata.Workflow.Foundation | Workflow | Schemata Workflow Foundation |
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- Schemata.Core (>= 1.0.0-preview.24207.14)
-
net8.0
- Schemata.Core (>= 1.0.0-preview.24207.14)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Schemata.Modular:
Package | Downloads |
---|---|
Schemata.Application.Complex.Targets
Schemata Application Framework - Comprehensive Application Project Targets |
|
Schemata.Application.Modular.Targets
Schemata Application Framework - Modular Application Project Targets |
GitHub repositories
This package is not used by any popular GitHub repositories.