DX.Data.Xpo.Mapster
26.1.3.34
dotnet add package DX.Data.Xpo.Mapster --version 26.1.3.34
NuGet\Install-Package DX.Data.Xpo.Mapster -Version 26.1.3.34
<PackageReference Include="DX.Data.Xpo.Mapster" Version="26.1.3.34" />
<PackageVersion Include="DX.Data.Xpo.Mapster" Version="26.1.3.34" />
<PackageReference Include="DX.Data.Xpo.Mapster" />
paket add DX.Data.Xpo.Mapster --version 26.1.3.34
#r "nuget: DX.Data.Xpo.Mapster, 26.1.3.34"
#:package DX.Data.Xpo.Mapster@26.1.3.34
#addin nuget:?package=DX.Data.Xpo.Mapster&version=26.1.3.34
#tool nuget:?package=DX.Data.Xpo.Mapster&version=26.1.3.34
DX.Data.Xpo.Mapster
Mapster-backed implementation of DX.Data.Xpo's abstract XPDataStore<TKey, TModel, TDBModel> — the AutoMapper-free alternative to DX.Data.Xpo.AutoMapper. This is the package to use if your project needs to keep targeting net462 (Mapster has no equivalent .NET Framework version-floor issue).
Target frameworks: net462, net8.0, net9.0, net10.0
DevExpress dependency: transitive, via DX.Data.Xpo (26.1.*)
Install
dotnet add package DX.Data.Xpo.Mapster
XPMapsterStore<TKey, TModel, TDBModel>
public class XPMapsterStore<TKey, TModel, TDBModel> : XPDataStore<TKey, TModel, TDBModel>
where TDBModel : XPBaseObject
{
public XPMapsterStore(IDataLayer dataLayer, MapsterMapper.IMapper mapper, IValidator<TDBModel> validator);
public override IQueryable<T> Query<T>(); // Query(UnitOfWork).ProjectToType<T>()
protected override TDBModel ToDBModel(TModel model); // Mapper.Map<TDBModel>(model)
protected override TModel ToModel(TDBModel dbModel); // Mapper.Map<TModel>(dbModel)
protected override TModel GetByKey(TKey key);
}
Mirrors XPAutoMapperStore exactly, member for member — swap AutoMapper.IMapper for MapsterMapper.IMapper and ProjectTo<T> for Mapster's ProjectToType<T>(). If you're migrating between the two mapper packages, the only code that changes is your TypeAdapterConfig/Profile setup and DI registration — the store subclass itself stays identical.
Usage
public class CustomerStore : XPMapsterStore<int, CustomerDto, XpoCustomer>
{
public CustomerStore(IDataLayer dataLayer, MapsterMapper.IMapper mapper, IValidator<XpoCustomer> validator)
: base(dataLayer, mapper, validator) { }
}
Configure your TypeAdapterConfig (e.g. TypeAdapterConfig<CustomerDto, XpoCustomer>.NewConfig()...) and register MapsterMapper.Mapper as IMapper in DI, then resolve IDataLayer the same way as the other XPO store variants.
Notes
- Package targets
net462(Mapster 7.2.0), andnet8.0/net9.0/net10.0(Mapster 10.x) via conditionalPackageReference. - For MS Identity storage on top of XPO with Mapster wiring, see
DX.Data.Xpo.Identity.Mapster.
See the root README for the full package list and DevExpress version alignment notes.
| 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. 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 is compatible. 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 Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 4.6.2
- DX.Data.Xpo (>= 26.1.3.38)
- Mapster (>= 7.2.0)
-
net10.0
- DX.Data.Xpo (>= 26.1.3.38)
- Mapster (>= 10.0.11)
-
net8.0
- DX.Data.Xpo (>= 26.1.3.38)
- Mapster (>= 10.0.11)
-
net9.0
- DX.Data.Xpo (>= 26.1.3.38)
- Mapster (>= 10.0.11)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on DX.Data.Xpo.Mapster:
| Package | Downloads |
|---|---|
|
DX.Data.Xpo.Identity.Mapster
XPO Based storage provider for ASP.NET Identity with Mapster implementation |
GitHub repositories
This package is not used by any popular GitHub repositories.
26.1.3.34: Rebuilt against DX.Data.Xpo 26.1.3.38 to pick up the System.Security.Cryptography.Xml 8.0.4 fix (NU1903) transitively.
26.1.3.33: Added a README.md with technical documentation, now embedded in the package via PackageReadmeFile.
26.1.3.32: Rebuilt against DX.Data.Xpo 26.1.3.36 to pick up DevExpress v26.1.3 transitively.
23.2.3.31: Implementation with Mapster DTO handling