ASP.NET Zero Documentation

repository·master·Indexed 41 days ago

https://github.com/aspnetzero/documents

A professional web application starter kit providing a modern UI and robust architecture for new web applications. It includes built-in Authentication, Authorization, Multi-tenancy, Organization units, Audit logging, and Real-time notifications, featuring the Metronic UI theme and Power Tools for code generation. Supports both Angular and React frontend integrations with ASP.NET Core.

Tokens
274.6K
Snippets
581
Records
1.1K
Agent score
51%

What's inside ASP.NET Zero

  1. Overview of ASP.NET Zero for Enterprise Development

    master

    ASP.NET Zero is an enterprise application development platform delivered with full source code. It provides a pre-built foundation for common enterprise requirements, allowing development teams to focus on unique business workflows rather than generic infrastructure.

    Key built-in capabilities include:

    • Security & Identity: Authentication, user administration, and role-based access control (RBAC).
    • Administration: A ready-made administration interface and dashboard structure.
    • Multi-Tenancy: Infrastructure for SaaS and multi-organization software, including tenant isolation, editions, and tenant administration.
    • Governance: Audit logs, entity history, and settings management.
    • Architecture: A layered, modular solution structure with consistent patterns for authorization, validation, and error handling.
  2. Overview of ASP.NET Core MVC & JQuery in ASP.NET Zero

    master

    ASP.NET Zero utilizes the latest ASP.NET Core MVC framework for building web applications, with JQuery serving as the primary client-side library. This stack is designed to help developers jump-start the creation of business applications.

    To begin working with this stack, follow these paths:

    • Download and Run: Use the Getting Started guide to obtain and execute the source code.
    • Understand Structure: Refer to the Development Guide to learn about the solution architecture and how to begin development.
    • Guided Learning: Follow the Step by Step Development tutorial to build a multi-tenant, localized, authorized, configurable, and testable application.
  3. ASP.NET Zero Power Tools Overview

    master
    ASP.NET Zero Power Tools is a .NET global tool that automates the creation of new pages. It generates the entity, permissions, application services, DTOs, client-side code, menu items, database migrations, and tests based on your defined entity properties. It provides a web-based UI for configuration.
  4. ASP.NET Zero Built-in Localization Features

    master

    ASP.NET Zero provides a comprehensive localization system out-of-the-box with the following capabilities:

    • No Setup Required: Localization and language management are built-in upon installation.
    • Supported Formats: Manage language files using RESX, XML, and JSON.
    • Language Management UI: Includes a dedicated page to add new languages and edit existing translations.
    • Multi-tenancy Support: Tenants can customize their own language translations independently.
  5. Understand the ASP.NET Zero Solution Structure

    master

    The ASP.NET Zero solution is organized into multiple projects categorized by layer and application type. Depending on which solution file you open (*.Web.sln, *.Mobile.sln, or *.All.sln), you will see different project sets.

    Core Layers

    • Core.Shared: Contains constants, enums, and helper classes shared between mobile and web.
    • Core: Contains the domain layer (entities and domain services).
    • Application.Shared: Contains application service interfaces and DTOs.
    • Application: Contains the application logic and application services.
    • EntityFrameworkCore: Contains the DbContext, repository implementations, and database migrations.
    • Web.Core: Contains common classes used by both MVC and Host projects.

    Application Projects

    • Web.Mvc (Back End Application): The main authenticated application. Business logic is typically added within the Areas/App folder. Controllers, views, and models reside here, with related scripts/styles in wwwroot/view-resources/Areas/App.
    • Web.Host (Back End API): A headless REST API project that serves the application to remote devices. It does not contain UI files (HTML/CSS/JS).
    • Web.Public (Public Web Site): A separate application for public-facing landing pages or websites.
    • Migrator: A console application used to execute database migrations.
    • ConsoleApiClient: A utility for performing authenticated API requests via IdentityServer4.
    • Tests: Contains unit and integration tests.
  6. Compare Angular + ASP.NET Core setup approaches

    master

    When starting an Angular and ASP.NET Core project, you can choose between three main approaches depending on your needs:

    1. Manual Setup: Best for learning or simple prototypes. You build all infrastructure (Auth, Multi-tenancy, etc.) from scratch. High learning value, full flexibility, and free.
    2. Visual Studio Template: A middle ground for quick prototyping. Faster setup than manual but still requires you to build enterprise features like Authorization and Audit logging.
    3. ASP.NET Zero: Best for enterprise applications. It provides built-in Authentication, Authorization, Multi-tenancy, Organization units, Audit logging, and Real-time notifications. It includes the Metronic UI theme and Power Tools for code generation. It is a licensed product but saves months of infrastructure work.
    | Feature | Manual Setup | VS Template | ASP.NET Zero |
    |---|---|---|---|
    | Setup time | 30-60 min | 5 min | 10 min |
    | Authentication | You build it | You build it | Built-in |
    | Authorization / Roles | You build it | You build it | Built-in |
    | Multi-tenancy | You build it | You build it | Built-in |
    | Organization units | You build it | You build it | Built-in |
    | Audit logging | You build it | You build it | Built-in |
    | UI theme | None | Basic | Metronic (production-ready) |
    | Code generation tools | None | None | Power Tools |
    | Real-time notifications | You build it | You build it | Built-in |
    | Learning value | High | Medium | High |
    | Flexibility | Full | Full | Full (source code included) |
    | Cost | Free | Free | Licensed |
  7. Key updates in ASP.NET Zero v14.3

    master

    ASP.NET Zero v14.3 introduces several core upgrades and UI enhancements:

    • ABP Framework Upgrade: Now built on ABP 10.3, providing the latest performance and stability updates.
    • Public Website UI: Upgraded from Bootstrap 3 to Bootstrap 5 for a modern design system and improved layout.
    • Angular & PrimeNG Enhancements:
      • Added a dark mode selector to PrimeNG theme options.
      • Migrated PrimeNG dropdowns to select in Power Tools for improved UX.
      • Enhanced Power Tools templates for compatibility with Angular 20.
    • UI Consistency: Improved modal titles and button label consistency across the UI, and updated the role modal to track active tabs and toggle permissions visibility.
  8. Compare ASP.NET Boilerplate Free Templates vs ASP.NET Zero

    master

    When deciding between the open-source ASP.NET Boilerplate free startup templates and the commercial ASP.NET Zero product, consider the following feature differences:

    Shared Infrastructure

    Both options include:

    • Abp framework features
    • Abp.Zero module integration
    • Multi-Tenancy support
    • Basic Login and Register functionality
    • Token-based authentication
    • Community support via StackOverflow

    ASP.NET Zero Exclusive Features

    ASP.NET Zero is designed for advanced SaaS and enterprise applications, providing features that the free templates lack:

    Account & Security:

    • Social logins, LDAP (Active Directory) / ADFS login, and OpenId Connect login
    • Forgot password, Password reset, and Email/Phone confirmation
    • Two-Factor Authentication (2FA) and User lockout
    • User profile management (images, change password, account linking)
    • Password complexity settings and Identity Server 4 integration

    Application Management:

    • Advanced User, Role, and Tenant management
    • Permission management (both Role and User based)
    • SaaS capabilities: Edition & feature management, Tenant subscription, payment & billing systems
    • Administrative tools: Tenant & user Impersonation, Organization Unit management, Audit log reports, and Real-time notifications (SignalR)
    • Host dashboard and Application settings
    • UI/UX: RTL support, Custom tenant logo & CSS, Time zone selection, and UI personalization (menus, dark/light skins)
    • Premium UI Theme: Metronic
    • Mobile: Xamarin mobile application support
    • Rapid Development: Power Tools code generation
    • Support: Premium forum support

    Key Differences Summary

    Feature CategoryFree Startup TemplatesASP.NET Zero
    User ManagementBasicAdvanced
    Permission ManagementRole based (Simple)Role & User based
    Tenant DashboardClient side onlyServer side integrated
    UI ThemeBSB Admin (free)Metronic (premium)
    Public WebsiteNot includedSimple public web site included
  9. Use ASP.NET MVC 5.x & JQuery for business applications

    master
    ASP.NET Zero provides a base solution for developers who prefer using the ASP.NET MVC 5.x platform combined with JQuery as the primary client-side library. This stack is designed to jump-start the development of business applications using traditional Multi-Page Application (MPA) patterns.
  10. Project Structure for ASP.NET Core & React

    master

    When you download an ASP.NET Zero project with the ASP.NET Core & React type, the solution is organized into four main folders:

    • react: Contains the React UI application, configured to work with Vite.
    • aspnet-core: Contains the server-side ASP.NET Core solution, configured for Visual Studio.
    • ui-tests-playwright: Contains end-to-end tests for the UI using Playwright, configured for Visual Studio Code.
  11. UI/UX Improvements in v14.2

    master

    Several refinements have been made to the user interface:

    • Install Page: Redesigned for a more contemporary look.
    • Form Validation: Improved keypress handling and validation logic for easier data entry.
    • Responsive Dashboard: Dashboard widgets now automatically adapt to mobile devices.
    • MVC Consistency: MVC components (such as the New Tenant page) have been updated to match the Angular UI style.
  12. Identify the ASP.NET Core MVC & jQuery Project Type

    master
    This documentation is specifically for the ASP.NET Core MVC & jQuery architecture. If you are using a different architecture, such as ASP.NET Core & Angular, refer to the appropriate documentation to ensure you are following the correct implementation patterns.