Aspectus 6.0.0
See the version list below for details.
dotnet add package Aspectus --version 6.0.0
NuGet\Install-Package Aspectus -Version 6.0.0
<PackageReference Include="Aspectus" Version="6.0.0" />
paket add Aspectus --version 6.0.0
#r "nuget: Aspectus, 6.0.0"
// Install Aspectus as a Cake Addin #addin nuget:?package=Aspectus&version=6.0.0 // Install Aspectus as a Cake Tool #tool nuget:?package=Aspectus&version=6.0.0
Aspectus
Aspectus is an advanced Aspect-Oriented Programming (AOP) library that simplifies the injection of cross-cutting concerns into your codebase. It empowers you to write clean and maintainable code by separating cross-cutting concerns from the core logic of your application.
Key Features
- Easy Integration: Aspectus seamlessly integrates with your project by registering with the IoC (Inversion of Control) container during startup.
- Code Generation: Leveraging Roslyn, Aspectus generates code dynamically, allowing you to write expressive C# code for implementing aspects.
- Flexible Aspect Customization: Implement the
IAspect
interface to define custom logic for constructors, methods, and exception handling. - AOP Modules: Aspectus supports modules, enabling you to consolidate and load setup code efficiently.
- NuGet Package: Install Aspectus easily through NuGet, simplifying the setup process for your projects.
Installation
To install Aspectus, use the NuGet package manager:
Install-Package Aspectus
Getting Started
Follow these steps to start using Aspectus in your project:
Register Aspectus with your IoC container during startup. Example code for ASP.NET Core:
ServiceProvider? ServiceProvider = new ServiceCollection().AddCanisterModules()?.BuildServiceProvider();
Implement aspects by creating classes that inherit from the
IAspect
interface. Customize aspects based on your specific requirements, such as constructor setups, method injections, and exception handling.public class TestAspect : IAspect { // Implement your aspect logic here }
Utilize Aspectus to create instances of types with injected aspects.
var aspectus = ServiceProvider.GetRequiredService<Aspectus>(); aspectus.Setup(typeof(YourClass)); var item = aspectus.Create<YourClass>(); // Use and enjoy your enhanced object
For a more detailed guide on using Aspectus, including advanced scenarios and AOP modules, refer to the Aspectus Documentation.
Build Process
To build Aspectus from source, ensure you have the following:
- Visual Studio 2022
- .Net 6
Simply clone the repository and open the solution in Visual Studio.
Contributing
Contributions are welcome! To contribute to Aspectus, please follow these steps:
- Fork the repository.
- Create your feature branch:
git checkout -b feature/YourFeature
. - Commit your changes:
git commit -am 'Add YourFeature'
. - Push to the branch:
git push origin feature/YourFeature
. - Submit a pull request.
Please ensure your code follows the existing coding style and includes appropriate tests. Additionally, make sure to update the documentation as needed.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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. net9.0 is compatible. |
-
net8.0
- Canister.IoC (>= 5.4.3)
- Microsoft.CodeAnalysis.Common (>= 4.11.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.11.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.0)
- Microsoft.Extensions.ObjectPool (>= 9.0.0)
- System.IO.FileSystem (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.7.0)
- System.Runtime.Loader (>= 4.3.0)
- System.Threading.Tasks.Parallel (>= 4.3.0)
-
net9.0
- Canister.IoC (>= 5.4.3)
- Microsoft.CodeAnalysis.Common (>= 4.11.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.11.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.0)
- Microsoft.Extensions.ObjectPool (>= 9.0.0)
- System.IO.FileSystem (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.7.0)
- System.Runtime.Loader (>= 4.3.0)
- System.Threading.Tasks.Parallel (>= 4.3.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Aspectus:
Package | Downloads |
---|---|
BigBook
Big Book of Data Types is a collection of various data types including Vector3, Set, RingBuffer, PriorityQueue, Fractions, and DateSpan. It also includes a number of extension methods for types found already in .Net. |
|
FileCurator.Windows
FileCurator.Windows is a set of formats that are only available using the full version of the .Net framework. If an alternative is built in .Net Standard these will be replaced. So consider this a hold over. |
|
HaterAide
HaterAide is a simple ORM that contains a number of features including automatic schema updates to a database based on the object mappings, stored procedure based calls and generation, etc. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
6.0.2 | 90 | 11/19/2024 |
6.0.1 | 122 | 11/18/2024 |
6.0.0 | 68 | 11/18/2024 |
5.1.1 | 72 | 11/16/2024 |
5.1.0 | 68 | 11/16/2024 |
5.0.65 | 967 | 11/11/2024 |
5.0.64 | 1,785 | 11/4/2024 |
5.0.63 | 1,550 | 10/29/2024 |
5.0.62 | 689 | 10/29/2024 |
5.0.61 | 2,736 | 10/9/2024 |
5.0.60 | 701 | 10/8/2024 |
5.0.59 | 9,657 | 8/22/2024 |
5.0.58 | 2,379 | 8/16/2024 |
5.0.57 | 1,772 | 8/13/2024 |
5.0.56 | 1,446 | 8/1/2024 |
5.0.55 | 3,055 | 7/10/2024 |
5.0.54 | 2,823 | 6/25/2024 |
5.0.53 | 30,126 | 6/24/2024 |
5.0.52 | 2,695 | 6/17/2024 |
5.0.51 | 2,730 | 6/11/2024 |
5.0.50 | 1,951 | 5/29/2024 |
5.0.49 | 3,479 | 5/15/2024 |
5.0.48 | 2,116 | 5/6/2024 |
5.0.47 | 1,976 | 5/1/2024 |
5.0.46 | 1,536 | 4/30/2024 |
5.0.45 | 736 | 4/29/2024 |
5.0.44 | 3,315 | 4/10/2024 |
5.0.43 | 3,166 | 3/27/2024 |
5.0.42 | 2,386 | 3/14/2024 |
5.0.41 | 844 | 3/13/2024 |
5.0.40 | 932 | 3/12/2024 |
5.0.39 | 1,730 | 3/6/2024 |
5.0.38 | 500 | 3/5/2024 |
5.0.37 | 444 | 3/4/2024 |
5.0.36 | 3,940 | 2/26/2024 |
5.0.35 | 1,585 | 2/21/2024 |
5.0.34 | 1,211 | 2/19/2024 |
5.0.33 | 1,601 | 2/13/2024 |
5.0.32 | 3,705 | 2/2/2024 |
5.0.31 | 6,132 | 1/29/2024 |
5.0.30 | 3,482 | 1/19/2024 |
5.0.29 | 2,611 | 1/9/2024 |
5.0.28 | 5,826 | 12/11/2023 |
5.0.27 | 3,694 | 11/22/2023 |
5.0.26 | 1,328 | 11/17/2023 |
5.0.25 | 1,362 | 11/16/2023 |
5.0.24 | 1,241 | 11/15/2023 |
5.0.23 | 2,567 | 11/6/2023 |
5.0.22 | 2,328 | 10/30/2023 |
5.0.21 | 2,076 | 10/24/2023 |
5.0.20 | 1,876 | 10/10/2023 |
5.0.19 | 2,679 | 9/18/2023 |
5.0.18 | 2,094 | 9/12/2023 |
5.0.17 | 1,127 | 9/11/2023 |
5.0.16 | 2,469 | 9/5/2023 |
5.0.15 | 1,171 | 9/4/2023 |
5.0.14 | 1,822 | 8/31/2023 |
5.0.13 | 1,334 | 8/30/2023 |
5.0.12 | 1,090 | 8/29/2023 |
5.0.11 | 1,469 | 8/28/2023 |
5.0.10 | 2,636 | 8/21/2023 |
5.0.9 | 1,491 | 8/16/2023 |
5.0.8 | 3,097 | 8/8/2023 |
5.0.7 | 1,138 | 8/7/2023 |
5.0.6 | 4,949 | 7/13/2023 |
5.0.5 | 697 | 7/12/2023 |
5.0.4 | 782 | 7/11/2023 |
5.0.3 | 503 | 7/10/2023 |
5.0.2 | 578 | 7/8/2023 |
5.0.1 | 597 | 7/8/2023 |
5.0.0 | 5,695 | 12/12/2022 |
4.0.24 | 10,121 | 6/6/2022 |
4.0.22 | 11,259 | 1/11/2022 |
4.0.21 | 8,722 | 6/17/2021 |
4.0.20 | 5,450 | 6/15/2021 |
4.0.19 | 2,429 | 1/6/2021 |
4.0.18 | 11,342 | 1/6/2021 |
4.0.17 | 974 | 1/6/2021 |
4.0.16 | 3,877 | 12/14/2020 |
4.0.15 | 1,014 | 12/12/2020 |
4.0.14 | 2,035 | 12/2/2020 |
4.0.13 | 906 | 12/2/2020 |
4.0.10 | 5,762 | 9/13/2020 |
4.0.9 | 17,853 | 4/16/2020 |
4.0.8 | 2,341 | 4/15/2020 |
4.0.7 | 2,029 | 4/15/2020 |
4.0.6 | 2,230 | 4/15/2020 |
4.0.5 | 5,939 | 4/10/2020 |
4.0.4 | 1,840 | 4/10/2020 |
4.0.3 | 8,689 | 3/25/2020 |
4.0.2 | 20,626 | 2/16/2020 |
4.0.1 | 8,829 | 11/23/2019 |
3.1.4 | 1,086 | 11/3/2019 |
3.1.3 | 1,421 | 6/19/2019 |
3.1.2 | 7,002 | 4/17/2019 |
3.1.1 | 9,668 | 2/21/2019 |
3.1.0 | 20,654 | 5/31/2018 |
3.0.6 | 4,633 | 5/22/2018 |
3.0.5 | 7,572 | 2/2/2018 |
3.0.4 | 2,628 | 1/23/2018 |
3.0.1 | 6,689 | 1/2/2018 |
2.0.24 | 2,729 | 12/12/2017 |
2.0.23 | 8,484 | 11/13/2017 |
2.0.22 | 8,018 | 10/2/2017 |
2.0.21 | 1,591 | 10/2/2017 |
2.0.20 | 3,095 | 10/2/2017 |
2.0.19 | 1,604 | 9/30/2017 |
2.0.18 | 1,663 | 9/29/2017 |
2.0.17 | 12,861 | 9/22/2017 |
2.0.16 | 3,336 | 9/20/2017 |
2.0.15 | 8,307 | 8/7/2017 |
2.0.14 | 12,766 | 5/17/2017 |
2.0.13 | 1,738 | 5/17/2017 |
2.0.12 | 1,736 | 5/12/2017 |
2.0.11 | 1,712 | 5/12/2017 |
2.0.5 | 9,665 | 1/24/2017 |
2.0.4 | 1,713 | 1/6/2017 |
2.0.3 | 4,149 | 12/9/2016 |
2.0.2 | 1,680 | 11/29/2016 |
2.0.1 | 2,409 | 11/23/2016 |
1.1.0 | 3,992 | 3/28/2011 |
1.0.10 | 1,699 | 5/12/2017 |
1.0.9 | 1,588 | 5/2/2017 |
1.0.8 | 1,665 | 4/14/2017 |
1.0.7 | 1,669 | 3/22/2017 |