docs.abp.io Open in urlscan Pro
2606:4700:20::ac43:4505  Public Scan

Submitted URL: http://docs.abp.io/
Effective URL: https://docs.abp.io/en/abp/latest
Submission: On October 23 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

<form id="page-feedback-form" novalidate="" data-entity-id="" data-entity-type="Document_Page">
  <h5 id="was-this-page-helpful">
    <a class="anchorjs-link " aria-label="Anchor" data-anchorjs-icon="" href="#was-this-page-helpful" style="font-style: normal; font-variant: normal; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-weight: normal; font-stretch: normal; font-size: 1em; line-height: inherit; font-family: anchorjs-icons; position: absolute; margin-left: -1em; padding-right: 0.5em;"></a>Was
    this page helpful?</h5>
  <div>
    <button class="btn btn-outline-primary" id="page-feedback-no-btn" type="button">
      <i class="fa fa-thumbs-down"></i>
      <span>No</span>
    </button>
    <button class="btn btn-outline-primary" id="page-feedback-yes-btn" type="button">
      <i class="fa fa-thumbs-up"></i>
      <span>Yes</span>
    </button>
    <div class="text-danger d-none" id="page-feedback-validation-error">
      <span>Please make a selection.</span>
    </div>
  </div>
  <input id="is-useful" class="d-none">
  <div class="mt-3">
    <textarea class="form-control" id="user-feedback" maxlength="1024" rows="4" placeholder="Share your experience with us, but please don't include sensitive or personal information."></textarea>
  </div>
  <div class="mt-3">
    <button type="submit" class="btn btn-primary">
      <i class="fa fa-paper-plane"></i>
      <span>Submit</span>
    </button>
  </div>
</form>

Text Content

Framework
Community Commercial
 * Blog
 * 
   GitHub


 * Blog
 * 
   Github


ABP Framework
Back to website

Version
7.4 (latest) 7.3 7.2 7.1 7.0 6.0 5.3 5.2 5.1 5.0 4.4 4.3 4.2 4.1 4.0 3.3 3.2 3.1
3.0 2.9 2.8 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.1 1.0
Language
English Português 简体中文

Search in the all documents
Quick Start
* With single-layer solutionUpd
* With layered architectureUpd
Getting Started
* Web Application - Layered Architecture
  * 1: Setup Your Development Environment
  * 2: Creating a New Solution
  * 3: Running the SolutionUpd
* Web Application - Single-Layered Architecture
  * 1: Setup Your Development Environment
  * 2: Creating a New Solution
  * 3: Running the SolutionUpd
* Console Application
* WPF Application
* MAUI
* Empty Web Project
Tutorials
* Web Application Development
  * 1: Creating the Server SideUpd
  * 2: The Book List Page
  * 3: Creating, Updating and Deleting Books
  * 4: Integration Tests
  * 5: Authorization
  * 6: Authors: Domain layer
  * 7: Authors: Database Integration
  * 8: Authors: Application Layer
  * 9: Authors: User Interface
  * 10: Book to Author Relation
* Community Articles
* Migrating from the ASP.NET Boilerplate
CLI
* Examples for the new command
Startup Templates
* Overall
* Application
* Application (Single Layer)
* Module
* Console
* WPF
Fundamentals
* Application Startup
* Authorization
* Caching
  * Entity Cache
  * Redis Cache
* Configuration
* Connection Strings
* Dependency Injection
  * AutoFac Integration
* Exception Handling
* Localization
* Logging
* Object Extensions
* Options
* Settings
* Validation
  * FluentValidation Integration
Infrastructure
* Audit Logging
* Background Jobs
  * Hangfire Integration
  * RabbitMQ Integration
  * Quartz Integration
* Background Workers
  * Quartz Integration
  * Hangfire Integration
* BLOB Storing
  * BLOB Storing System
  * Storage Providers
    * File System Provider
    * Database Provider
    * Azure Provider
    * Aliyun Provider
    * Minio Provider
    * AWS Provider
    * Create a Custom Provider
* Cancellation Token Provider
* CSRF/XSRF & Anti Forgery
* Concurrency Check
* Current User
* Data Filtering
* Data Seeding
* Distributed Locking
* Email Sending
  * Email Sending System
  * MailKit Integration
* Event Bus
  * Overall
  * Local Event Bus
  * Distributed Event Bus
    * Azure Service Bus Integration
    * RabbitMQ Integration
    * Kafka Integration
    * Rebus Integration
* Features
* Global Features
* GUID Generation
* Image Manipulation
* JSON
* Object to Object Mapping
* Simple State Checker
* SMS Sending
* String Encryption
* Text Templating
  * Razor Integration
  * Scriban Integration
* Timing
* Virtual File System
Architecture
* Modularity
  * Basics
  * Plug-In Modules
  * Best Practices
    * Overall
    * Module Architecture
    * Domain Layer
      * Entities
      * Repositories
      * Domain Services
    * Application Layer
      * Application Services
      * Data Transfer Objects
    * Data Access
      * Entity Framework Core Integration
      * MongoDB Integration
  * Customizing/Extending Modules
    * Overall
    * Module Entity Extension System
    * Customizing/Extending Entities
    * Customizing/Overriding Services
* Domain Driven Design
  * Overall
  * Domain Layer
    * Entities & Aggregate Roots
    * Value Objects
    * Repositories
    * Domain Services
    * Specifications
  * Application Layer
    * Application Services
    * Data Transfer Objects
    * Unit Of Work
  * E-Book: Implementing DDD
* Multi Tenancy
* Microservices
API
* ABP Endpoints
  * Application Configuration
  * Application Localization
* API Versioning
* Auto API Controllers
* Dynamic C# API Clients
* Integration Services
* Static C# API Clients
* Swagger Integration
User Interface
* MVC / Razor Pages
  * Overall
  * Navigation / Menus
  * Forms & Validation
  * Modals
  * Data Tables
  * Auto-Complete Select
  * Page Alerts
  * Dynamic JavaScript API Client Proxies
  * Static JavaScript API Client Proxies
  * Client Side Package Management
  * Bundling & Minification
  * Tag Helpers
    * Form Elements
    * Dynamic Forms
  * Widgets
  * Toolbars
  * Page Header
  * Branding
  * Layout Hooks
  * Testing
  * Theming
    * The Basic Theme
    * LeptonX Lite
  * JavaScript API
    * Overall
    * Localization
    * Auth
    * Current User
    * Settings
    * Features
    * AJAX
    * Message
    * Notify
    * Block/Busy
    * Events
    * DOM
    * Logging
    * Resource Loader
  * Customize/Extend the UI
    * Overall
    * Entity Action Extensions
    * Data Table Column Extensions
    * Page Toolbar Extensions
  * Security
    * Security Headers
* Blazor
  * Overall
  * Navigation / Menu
  * Localization
  * Theming
    * Overall
    * The Basic Theme
    * LeptonX Lite
    * Branding
    * Page Header
    * Page Layout
    * Toolbars
  * Security
    * Authentication
    * Authorization
  * Services
    * Current User
    * Current Tenant
    * Notification
    * Message
    * Page Alerts
    * Page Progress
  * Other Components
    * SubmitButton
  * Settings
  * Error Handling
  * Customization / Overriding Components
  * Global Scripts & Styles
  * Global Features
  * Routing
  * PWA Configuration
  * Layout Hooks
* Angular
  * Quick Start
  * Development
    * Environment Variables
    * About Feature Libraries
    * Service ProxiesUpd
    * PWA Configuration
    * Unit Testing
  * Core Functionality
    * Config State Service
    * Authorization
    * Current User
    * HTTP Requests
    * Localization
    * Form Validation
    * Settings
    * Features
    * Global Features
    * Permission Management
    * Multi Tenancy
    * Account Module
  * Utilities
    * Managing RxJS Subscriptions
    * Working with Lists
    * Easy *ngFor trackBy
    * Router Events
    * Inserting Scripts & Styles to DOM
    * Lazy Loading Scripts & Styles
    * Projecting Angular Content
    * Modal
    * Confirmation Popup
    * Loading Directive
    * Toast Overlay
    * Page Alerts
    * Ellipsis
    * Context Strategy
    * Cross Origin Strategy
    * Dom Strategy
    * Container Strategy
    * Content Security Strategy
  * Customization
    * Customization Guide
    * Theming
      * Overall
      * Configuration
      * The Basic Theme
      * LeptonX Lite
    * Modifying the Menu
    * Sorting Navigation Elements
    * Component Replacement
    * Extensions
      * Overall
      * Entity Action Extensions
      * Data Table Column Extensions
      * Page Toolbar Extensions
      * Dynamic Form Extensions
      * Date, time and datetime format pipes
  * Components
    * Page
    * Chart
    * Card
* React Native
  * Getting Started
* Common
  * Themes
  * Overriding the User Interface
  * Utilities
    * Linked List (Doubly)
Data Access
* Overall
* Entity Framework Core
  * Database Migrations
  * Switch DBMS
    * To MySQL
    * To PostgreSQL
    * To Oracle
      * Oracle (Official)
      * Oracle (Devart)
    * To SQLite
* MongoDB
* Dapper
Real Time
* SignalR Integration
Dapr IntegrationTestingDeployment
* Configuring OpenIddict
* Configuring for Production
* Deploying to a Clustered Environment
* Distributed / Microservice Solutions
* Optimizing for Production
Application Modules
* Overall
* Account
* Audit Logging
* Background Jobs
* CMS Kit
* Docs
* Feature Management
* Identity
* IdentityServer
  * IdentityServer Migration Guide
* OpenIddict
  * OpenIddict Migration Guide
* Permission Management
* Setting Management
* Tenant Management
* Virtual File Explorer
* Common
  * Database Tables
Samples
* All Samples
* eShopOnAbp
* EventHub
* Microservice Demo (legacy)
Books
* Mastering ABP Framework
* Implementing Domain Driven Design
Release Information
* Upgrading
* Official Packages
* Preview Releases
* Nightly Builds
* Road Map
* Migration Guides
API DocumentationContribution Guide


 1. 


Feedback
Contributors Edit (5/4/2023)



ABP DOCUMENTATION

ABP Framework offers an opinionated architecture to build enterprise software
solutions with best practices on top of the .NET and the ASP.NET Core platforms.
It provides the fundamental infrastructure, production-ready startup templates,
modules, themes, tooling, guides and documentation to implement that
architecture properly and automate the details and repetitive works as much as
possible.


GETTING STARTED

 * Quick Start is a single-part, quick-start tutorial to build a simple
   application with the ABP Framework. Start with this tutorial if you want to
   quickly understand how ABP works.
 * Getting Started guide can be used to create and run ABP based solutions with
   different options and details.
 * Web Application Development Tutorial is a complete tutorial to develop a full
   stack web application with all aspects of a real-life solution.


UI FRAMEWORK OPTIONS

ABP Framework can work with any UI framework, while the following frameworks are
supported out of the box:


DATABASE PROVIDER OPTIONS

ABP Framework can work with any database provider, while the following providers
are supported out of the box:


EXPLORING THE DOCUMENTATION

ABP has a comprehensive documentation that not only explains the ABP Framework,
but also includes guides and samples to help you on creating a maintainable
solution by introducing and discussing common software development principle and
best practices.


ARCHITECTURE

ABP offers a complete, modular and layered software architecture based on Domain
Driven Design principles and patterns. It also provides the necessary
infrastructure to implement this architecture.

 * See the Modularity document to understand the module system.
 * Implementing Domain Driven Design book is an ultimate guide for who want to
   understand and implement the DDD with the ABP Framework.
 * Microservice Architecture document explains how ABP helps to create a
   microservice solution.
 * Multi-Tenancy document introduces multi-tenancy and explores the ABP
   multi-tenancy infrastructure.


INFRASTRUCTURE

There are a lot of features provided by the ABP Framework to achieve real world
scenarios easier, like Event Bus, Background Job System, Audit Logging, BLOB
Storing, Data Seeding, Data Filtering.


CROSS CUTTING CONCERNS

ABP also simplifies (and even automates wherever possible) cross cutting
concerns and common non-functional requirements like Exception Handling,
Validation, Authorization, Localization, Caching, Dependency Injection, Setting
Management, etc.


APPLICATION MODULES

Application Modules provides pre-built application functionalities;

 * Account: Provides UI for the account management and allows user to
   login/register to the application.
 * Identity: Manages organization units, roles, users and their permissions,
   based on the Microsoft Identity library.
 * OpenIddict: Integrates to OpenIddict.
 * Tenant Management: Manages tenants for a multi-tenant (SaaS) application.

See the Application Modules document for all pre-built modules.


STARTUP TEMPLATES

The Startup templates are pre-built Visual Studio solution templates. You can
create your own solution based on these templates to immediately start your
development.


BOOKS


MASTERING ABP FRAMEWORK

Mastering ABP Framework is an ultimate guide to get started and expertise with
the ABP Framework. It is authored by Halil İbrahim Kalkan, the creator and the
lead developer of the ABP Framework.

You can order it from Amazon now!


FREE E-BOOK: IMPLEMENTING DOMAIN DRIVEN DESIGN

A practical guide for implementing Domain Driven Design (DDD). While the
implementation details are based on the ABP Framework infrastructure, the basic
concepts, principles and models can be applied to any solution, even if it is
not a .NET solution.

Click here to get your free copy.


ABP COMMUNITY


THE SOURCE CODE

ABP is hosted on GitHub. See the source code.


ABP COMMUNITY WEB SITE

The ABP Community is a website to publish articles and share knowledge about the
ABP Framework. You can also create content for the community!


BLOG

Follow the ABP Blog to learn the latest happenings in the ABP Framework.


SAMPLES

See the sample projects built with the ABP Framework.


WANT TO CONTRIBUTE?

ABP is a community-driven open source project. See the contribution guide if you
want to be a part of this project.

WAS THIS PAGE HELPFUL?

No Yes
Please make a selection.

Submit

THANK YOU FOR YOUR VALUABLE FEEDBACK!

Please note that although we cannot respond to feedback, our team will use your
comments to improve the experience.



IN THIS DOCUMENT

 * Getting Started
   * UI Framework Options
   * Database Provider Options
 * Exploring the Documentation
   * Architecture
   * Infrastructure
   * Cross Cutting Concerns
   * Application Modules
   * Startup Templates
 * Books
   * Mastering ABP Framework
   * Free E-Book: Implementing Domain Driven Design
 * ABP Community
   * The Source Code
   * ABP Community Web Site
   * Blog
   * Samples
   * Want to Contribute?

Go to top


BUILD YOUR OWN CMS WITH .NET: A FIRST LOOK AT ABP’S CONTENT MANAGEMENT SYSTEM
KIT


September 28, 2023 17:00 (UTC)
Previous Events Watch the Event

MASTERING ABP FRAMEWORK

This book will help you gain a complete understanding of the framework and
modern web application development techniques.

See Book Details