MasLazu.AspNet.Authorization.Page.Abstraction 1.0.0-preview.1

This is a prerelease version of MasLazu.AspNet.Authorization.Page.Abstraction.
dotnet add package MasLazu.AspNet.Authorization.Page.Abstraction --version 1.0.0-preview.1
                    
NuGet\Install-Package MasLazu.AspNet.Authorization.Page.Abstraction -Version 1.0.0-preview.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MasLazu.AspNet.Authorization.Page.Abstraction" Version="1.0.0-preview.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MasLazu.AspNet.Authorization.Page.Abstraction" Version="1.0.0-preview.1" />
                    
Directory.Packages.props
<PackageReference Include="MasLazu.AspNet.Authorization.Page.Abstraction" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MasLazu.AspNet.Authorization.Page.Abstraction --version 1.0.0-preview.1
                    
#r "nuget: MasLazu.AspNet.Authorization.Page.Abstraction, 1.0.0-preview.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MasLazu.AspNet.Authorization.Page.Abstraction@1.0.0-preview.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MasLazu.AspNet.Authorization.Page.Abstraction&version=1.0.0-preview.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=MasLazu.AspNet.Authorization.Page.Abstraction&version=1.0.0-preview.1&prerelease
                    
Install as a Cake Tool

MasLazu.AspNet.Authorization.Page.Abstraction

This project defines the abstraction layer for the ASP.NET Authorization Page system. It provides contracts (interfaces and data models) that other layers in the application can implement and use.

Overview

The abstraction layer serves as the foundation for the page authorization functionality, defining:

  • Service interfaces for CRUD operations on pages, page groups, and page permissions
  • Data transfer objects (DTOs) for representing entities
  • Request models for create and update operations

Key Components

Interfaces

  • IPageService: Defines CRUD operations for pages
  • IPageGroupService: Defines CRUD operations for page groups
  • IPagePermissionService: Defines CRUD operations for page permissions

All interfaces inherit from ICrudService<TDto, TCreateRequest, TUpdateRequest> from the MasLazu.AspNet.Framework.Application package.

Models

DTOs
  • PageDto: Represents a page with properties like Id, ParentId, PageGroupId, Code, Name, Path, and timestamps
  • PageGroupDto: Represents a page group with Id, Code, Name, Icon, and timestamps
  • PagePermissionDto: Represents a page permission linking a page to a permission with Id, PageId, PermissionId, and timestamps
Request Models
  • CreatePageRequest: For creating new pages (ParentId, PageGroupId, Code, Name, Path)
  • CreatePageGroupRequest: For creating new page groups (Code, Name, Icon)
  • CreatePagePermissionRequest: For creating new page permissions (PageId, PermissionId)
  • UpdatePageRequest: For updating pages (Id, optional ParentId, PageGroupId, Code, Name, Path)
  • UpdatePageGroupRequest: For updating page groups (Id, optional Code, Name, Icon)
  • UpdatePagePermissionRequest: For updating page permissions (Id, optional PageId, PermissionId)

Dependencies

  • MasLazu.AspNet.Framework.Application: Provides base interfaces and models like ICrudService, BaseDto, and BaseUpdateRequest

Target Framework

  • .NET 9.0
  • Nullable reference types enabled
  • Implicit usings enabled

Usage

This project is referenced by other projects in the solution to implement the actual business logic and data access. It ensures consistent contracts across different layers of the application.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on MasLazu.AspNet.Authorization.Page.Abstraction:

Package Downloads
MasLazu.AspNet.Authorization.Page.Endpoint

Package Description

MasLazu.AspNet.Authorization.Page

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-preview.1 184 9/25/2025