Aspectus 5.0.48
See the version list below for details.
dotnet add package Aspectus --version 5.0.48
NuGet\Install-Package Aspectus -Version 5.0.48
<PackageReference Include="Aspectus" Version="5.0.48" />
paket add Aspectus --version 5.0.48
#r "nuget: Aspectus, 5.0.48"
// Install Aspectus as a Cake Addin
#addin nuget:?package=Aspectus&version=5.0.48
// Install Aspectus as a Cake Tool
#tool nuget:?package=Aspectus&version=5.0.48
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-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. |
-
net6.0
- Canister.IoC (>= 5.3.9)
- Microsoft.CodeAnalysis.Common (>= 4.9.2)
- Microsoft.CodeAnalysis.CSharp (>= 4.9.2)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.1)
- Microsoft.Extensions.ObjectPool (>= 8.0.4)
- 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.49 | 984 | 5/15/2024 |
5.0.48 | 1,727 | 5/6/2024 |
5.0.47 | 1,480 | 5/1/2024 |
5.0.46 | 905 | 4/30/2024 |
5.0.45 | 555 | 4/29/2024 |
5.0.44 | 2,773 | 4/10/2024 |
5.0.43 | 2,642 | 3/27/2024 |
5.0.42 | 1,978 | 3/14/2024 |
5.0.41 | 689 | 3/13/2024 |
5.0.40 | 775 | 3/12/2024 |
5.0.39 | 1,424 | 3/6/2024 |
5.0.38 | 388 | 3/5/2024 |
5.0.37 | 344 | 3/4/2024 |
5.0.36 | 3,320 | 2/26/2024 |
5.0.35 | 1,277 | 2/21/2024 |
5.0.34 | 997 | 2/19/2024 |
5.0.33 | 1,308 | 2/13/2024 |
5.0.32 | 3,169 | 2/2/2024 |
5.0.31 | 4,979 | 1/29/2024 |
5.0.30 | 2,752 | 1/19/2024 |
5.0.29 | 2,183 | 1/9/2024 |
5.0.28 | 5,021 | 12/11/2023 |
5.0.27 | 3,231 | 11/22/2023 |
5.0.26 | 1,136 | 11/17/2023 |
5.0.25 | 1,102 | 11/16/2023 |
5.0.24 | 993 | 11/15/2023 |
5.0.23 | 2,060 | 11/6/2023 |
5.0.22 | 1,944 | 10/30/2023 |
5.0.21 | 1,730 | 10/24/2023 |
5.0.20 | 1,593 | 10/10/2023 |
5.0.19 | 2,280 | 9/18/2023 |
5.0.18 | 1,758 | 9/12/2023 |
5.0.17 | 973 | 9/11/2023 |
5.0.16 | 2,092 | 9/5/2023 |
5.0.15 | 1,031 | 9/4/2023 |
5.0.14 | 1,559 | 8/31/2023 |
5.0.13 | 1,167 | 8/30/2023 |
5.0.12 | 967 | 8/29/2023 |
5.0.11 | 1,289 | 8/28/2023 |
5.0.10 | 2,235 | 8/21/2023 |
5.0.9 | 1,299 | 8/16/2023 |
5.0.8 | 2,497 | 8/8/2023 |
5.0.7 | 1,016 | 8/7/2023 |
5.0.6 | 4,173 | 7/13/2023 |
5.0.5 | 641 | 7/12/2023 |
5.0.4 | 719 | 7/11/2023 |
5.0.3 | 473 | 7/10/2023 |
5.0.2 | 549 | 7/8/2023 |
5.0.1 | 562 | 7/8/2023 |
5.0.0 | 5,409 | 12/12/2022 |
4.0.24 | 9,835 | 6/6/2022 |
4.0.22 | 10,922 | 1/11/2022 |
4.0.21 | 8,345 | 6/17/2021 |
4.0.20 | 5,208 | 6/15/2021 |
4.0.19 | 2,338 | 1/6/2021 |
4.0.18 | 10,783 | 1/6/2021 |
4.0.17 | 942 | 1/6/2021 |
4.0.16 | 3,711 | 12/14/2020 |
4.0.15 | 984 | 12/12/2020 |
4.0.14 | 1,940 | 12/2/2020 |
4.0.13 | 874 | 12/2/2020 |
4.0.10 | 5,440 | 9/13/2020 |
4.0.9 | 17,190 | 4/16/2020 |
4.0.8 | 2,249 | 4/15/2020 |
4.0.7 | 1,963 | 4/15/2020 |
4.0.6 | 2,161 | 4/15/2020 |
4.0.5 | 5,725 | 4/10/2020 |
4.0.4 | 1,786 | 4/10/2020 |
4.0.3 | 8,376 | 3/25/2020 |
4.0.2 | 19,896 | 2/16/2020 |
4.0.1 | 8,493 | 11/23/2019 |
3.1.4 | 1,060 | 11/3/2019 |
3.1.3 | 1,378 | 6/19/2019 |
3.1.2 | 6,388 | 4/17/2019 |
3.1.1 | 9,248 | 2/21/2019 |
3.1.0 | 19,730 | 5/31/2018 |
3.0.6 | 4,468 | 5/22/2018 |
3.0.5 | 7,333 | 2/2/2018 |
3.0.4 | 2,553 | 1/23/2018 |
3.0.1 | 6,446 | 1/2/2018 |
2.0.24 | 2,646 | 12/12/2017 |
2.0.23 | 8,235 | 11/13/2017 |
2.0.22 | 7,773 | 10/2/2017 |
2.0.21 | 1,550 | 10/2/2017 |
2.0.20 | 2,982 | 10/2/2017 |
2.0.19 | 1,572 | 9/30/2017 |
2.0.18 | 1,618 | 9/29/2017 |
2.0.17 | 12,423 | 9/22/2017 |
2.0.16 | 3,236 | 9/20/2017 |
2.0.15 | 8,008 | 8/7/2017 |
2.0.14 | 12,281 | 5/17/2017 |
2.0.13 | 1,692 | 5/17/2017 |
2.0.12 | 1,707 | 5/12/2017 |
2.0.11 | 1,666 | 5/12/2017 |
2.0.5 | 9,359 | 1/24/2017 |
2.0.4 | 1,680 | 1/6/2017 |
2.0.3 | 4,008 | 12/9/2016 |
2.0.2 | 1,643 | 11/29/2016 |
2.0.1 | 2,332 | 11/23/2016 |
1.1.0 | 3,940 | 3/28/2011 |
1.0.10 | 1,669 | 5/12/2017 |
1.0.9 | 1,538 | 5/2/2017 |
1.0.8 | 1,620 | 4/14/2017 |
1.0.7 | 1,644 | 3/22/2017 |