ExIgniter.ObjectMapper
3.0.0
See the version list below for details.
dotnet add package ExIgniter.ObjectMapper --version 3.0.0
NuGet\Install-Package ExIgniter.ObjectMapper -Version 3.0.0
<PackageReference Include="ExIgniter.ObjectMapper" Version="3.0.0" />
<PackageVersion Include="ExIgniter.ObjectMapper" Version="3.0.0" />
<PackageReference Include="ExIgniter.ObjectMapper" />
paket add ExIgniter.ObjectMapper --version 3.0.0
#r "nuget: ExIgniter.ObjectMapper, 3.0.0"
#:package ExIgniter.ObjectMapper@3.0.0
#addin nuget:?package=ExIgniter.ObjectMapper&version=3.0.0
#tool nuget:?package=ExIgniter.ObjectMapper&version=3.0.0
Here's an updated README.md
for ExIgniter.ObjectMapper version 3.0.0, highlighting new features and improvements.
ExIgniter.ObjectMapper 3.0
ExIgniter.ObjectMapper is an intelligent, high-performance object mapping library for .NET, now even more powerful and streamlined.
Version 3.0.0 delivers:
- 🚀 Enhanced performance through advanced optimization techniques.
- 🛡️ Richer configuration options for fine-grained control over mapping behavior.
- 🧠 Smarter, more intuitive property matching to reduce boilerplate.
- 🔒 Robust safety features including circular reference detection and recursion limits.
- 🧱 Comprehensive support for collections, complex object graphs, and nested structures.
✨ Why ExIgniter?
- ✅ Zero-configuration for the vast majority of use cases.
- ⚡ Significantly faster than previous versions in benchmarks.
- 🌟 Intelligently matches common property name variations automatically.
- 🔄 Handles nested objects, collections, and dictionaries with ease and safety.
- 🛡️ Security-first design: features like cycle detection, recursion depth limits, and type whitelisting prevent common mapping pitfalls.
📦 Installation
Install-Package ExIgniter.ObjectMapper
Supports: .NET Standard 2.1+
, .NET 6+
, .NET 7+
, .NET 8+
🔑 Key Features
🚀 Performance Optimized
- Refined reflection caching: Even quicker lookups.
- Reduced allocations: Minimizing garbage collection overhead.
- Optimized mapping strategies: Faster data transfer.
🧠 Intelligent Mapping
Automatically resolves common mismatches and handles complex scenarios:
"UserName"
→"Username"
"Addr1"
→"AddressLine1"
"ID"
→"Id"
- Customizable conventions for unique naming patterns.
🔐 Safe and Secure
- Advanced cycle detection: Prevents infinite loops in object graphs.
- Configurable max depth limit: Safeguards against runaway recursion.
- Whitelisted types: Ensures only safe types are instantiated during mapping.
🧰 Comprehensive Collection Support
Seamlessly maps diverse collection types:
- Arrays, Lists, HashSets
- Dictionaries
- Queues and Stacks
- Custom collection handling for specific requirements.
📊 Benchmarks (v2.0 vs v3.0)
Scenario | v2.0 | v3.0 | Speedup (approx.) |
---|---|---|---|
Simple Object | 50ms | 35ms | 1.4× |
Complex Graph | 140ms | 95ms | 1.5× |
Collection (1k) | 70ms | 45ms | 1.5× |
Benchmarks were performed using representative DTOs and nested entities on .NET 8. Actual results may vary.
📚 Documentation
- Comprehensive API reference: Detailed usage for every feature.
- Configuration guide: Master advanced mapping scenarios.
- Migration steps: Smoothly upgrade from v2.x to v3.0.
🤝 Contributing
We welcome contributions from the community!
📄 License
MIT License — free for commercial and personal use.
Happy mapping with ExIgniter.ObjectMapper 3.0! 🎯
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. net9.0 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
3.0.2 | 82 | 5/24/2025 |
3.0.0 | 72 | 5/24/2025 |
2.0.2 | 145 | 5/22/2025 |
2.0.1 | 169 | 5/22/2025 |
2.0.0 | 155 | 5/22/2025 |
1.1.0 | 2,219 | 4/10/2019 |
1.0.9 | 719 | 3/29/2019 |
1.0.8 | 718 | 3/29/2019 |
1.0.7 | 719 | 3/21/2019 |
1.0.6 | 729 | 3/18/2019 |
1.0.4 | 717 | 3/18/2019 |
1.0.3 | 814 | 2/8/2019 |
1.0.2 | 763 | 2/7/2019 |
1.0.1 | 792 | 2/7/2019 |
1.0.0 | 806 | 2/6/2019 |