Aspectus 5.0.19
See the version list below for details.
dotnet add package Aspectus --version 5.0.19
NuGet\Install-Package Aspectus -Version 5.0.19
<PackageReference Include="Aspectus" Version="5.0.19" />
paket add Aspectus --version 5.0.19
#r "nuget: Aspectus, 5.0.19"
// Install Aspectus as a Cake Addin
#addin nuget:?package=Aspectus&version=5.0.19
// Install Aspectus as a Cake Tool
#tool nuget:?package=Aspectus&version=5.0.19
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 | 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 was computed. net8.0-android 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
- Canister.IoC (>= 5.1.13)
- Microsoft.CodeAnalysis.Common (>= 4.7.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.7.0)
- Microsoft.Extensions.Logging.Abstractions (>= 7.0.1)
- Microsoft.Extensions.ObjectPool (>= 7.0.11)
- 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 |
---|---|---|
5.0.27 | 967 | 11/22/2023 |
5.0.26 | 684 | 11/17/2023 |
5.0.25 | 530 | 11/16/2023 |
5.0.24 | 457 | 11/15/2023 |
5.0.23 | 1,309 | 11/6/2023 |
5.0.22 | 1,343 | 10/30/2023 |
5.0.21 | 1,151 | 10/24/2023 |
5.0.20 | 1,102 | 10/10/2023 |
5.0.19 | 1,656 | 9/18/2023 |
5.0.18 | 1,209 | 9/12/2023 |
5.0.17 | 575 | 9/11/2023 |
5.0.16 | 1,524 | 9/5/2023 |
5.0.15 | 672 | 9/4/2023 |
5.0.14 | 1,097 | 8/31/2023 |
5.0.13 | 769 | 8/30/2023 |
5.0.12 | 577 | 8/29/2023 |
5.0.11 | 884 | 8/28/2023 |
5.0.10 | 1,684 | 8/21/2023 |
5.0.9 | 889 | 8/16/2023 |
5.0.8 | 1,743 | 8/8/2023 |
5.0.7 | 664 | 8/7/2023 |
5.0.6 | 3,361 | 7/13/2023 |
5.0.5 | 366 | 7/12/2023 |
5.0.4 | 435 | 7/11/2023 |
5.0.3 | 231 | 7/10/2023 |
5.0.2 | 283 | 7/8/2023 |
5.0.1 | 269 | 7/8/2023 |
5.0.0 | 4,925 | 12/12/2022 |
4.0.24 | 9,260 | 6/6/2022 |
4.0.22 | 10,446 | 1/11/2022 |
4.0.21 | 7,825 | 6/17/2021 |
4.0.20 | 4,828 | 6/15/2021 |
4.0.19 | 1,995 | 1/6/2021 |
4.0.18 | 10,003 | 1/6/2021 |
4.0.17 | 612 | 1/6/2021 |
4.0.16 | 3,323 | 12/14/2020 |
4.0.15 | 759 | 12/12/2020 |
4.0.14 | 1,600 | 12/2/2020 |
4.0.13 | 608 | 12/2/2020 |
4.0.10 | 4,987 | 9/13/2020 |
4.0.9 | 16,310 | 4/16/2020 |
4.0.8 | 1,894 | 4/15/2020 |
4.0.7 | 1,606 | 4/15/2020 |
4.0.6 | 1,788 | 4/15/2020 |
4.0.5 | 5,342 | 4/10/2020 |
4.0.4 | 1,439 | 4/10/2020 |
4.0.3 | 7,902 | 3/25/2020 |
4.0.2 | 19,025 | 2/16/2020 |
4.0.1 | 7,909 | 11/23/2019 |
3.1.4 | 779 | 11/3/2019 |
3.1.3 | 1,076 | 6/19/2019 |
3.1.2 | 5,712 | 4/17/2019 |
3.1.1 | 8,715 | 2/21/2019 |
3.1.0 | 18,794 | 5/31/2018 |
3.0.6 | 4,025 | 5/22/2018 |
3.0.5 | 6,834 | 2/2/2018 |
3.0.4 | 2,172 | 1/23/2018 |
3.0.1 | 5,999 | 1/2/2018 |
2.0.24 | 2,242 | 12/12/2017 |
2.0.23 | 7,822 | 11/13/2017 |
2.0.22 | 7,339 | 10/2/2017 |
2.0.21 | 1,248 | 10/2/2017 |
2.0.20 | 2,636 | 10/2/2017 |
2.0.19 | 1,258 | 9/30/2017 |
2.0.18 | 1,294 | 9/29/2017 |
2.0.17 | 11,834 | 9/22/2017 |
2.0.16 | 2,880 | 9/20/2017 |
2.0.15 | 7,398 | 8/7/2017 |
2.0.14 | 11,603 | 5/17/2017 |
2.0.13 | 1,354 | 5/17/2017 |
2.0.12 | 1,407 | 5/12/2017 |
2.0.11 | 1,297 | 5/12/2017 |
2.0.5 | 8,834 | 1/24/2017 |
2.0.4 | 1,334 | 1/6/2017 |
2.0.3 | 3,623 | 12/9/2016 |
2.0.2 | 1,296 | 11/29/2016 |
2.0.1 | 1,992 | 11/23/2016 |
1.1.0 | 3,598 | 3/28/2011 |
1.0.10 | 1,352 | 5/12/2017 |
1.0.9 | 1,257 | 5/2/2017 |
1.0.8 | 1,315 | 4/14/2017 |
1.0.7 | 1,290 | 3/22/2017 |