Dreamine.MVVM.Core is the lightweight infrastructure core of the Dreamine MVVM framework.
It provides the minimal runtime foundation required to support explicit architecture, constructor-based resolution, and low-complexity application composition.
This package is intentionally small and focused.
Dreamine.MVVM.Core currently focuses on:
- lightweight dependency registration
- constructor-based object resolution
- singleton and factory-based registration
- minimal infrastructure for Dreamine MVVM modules
- DMContainer lightweight dependency injection container
- explicit registration model
- constructor-based resolution
- simple singleton caching
- framework-light architecture
- .NET:
net8.0
<ItemGroup>
<ProjectReference Include="..\Dreamine.MVVM.Core\Dreamine.MVVM.Core.csproj" />
</ItemGroup>NuGet packaging is planned in future releases.
Dreamine.MVVM.Core
└── DMContainer.cs
DMContainer.Register<IMyService>(() => new MyService());IMyService service = DMContainer.Resolve<IMyService>();var service = new MyService();
DMContainer.RegisterSingleton<IMyService>(service);DMContainer is the central infrastructure component of this package.
Responsibilities:
- register factory delegates
- register singleton instances
- resolve constructor dependencies
- auto-register supported application types
Example:
DMContainer.Register<IMessageService>(() => new MessageService());
var messageService = DMContainer.Resolve<IMessageService>();Dreamine.MVVM.Core prioritizes:
- explicit behavior over hidden magic
- low dependency surface
- predictable constructor-based composition
- simple extension points for higher-level modules
Typical composition with other Dreamine packages:
Dreamine.MVVM.InterfacesDreamine.MVVM.ViewModelsDreamine.MVVM.LocatorsDreamine.MVVM.Wpf
MIT License