Table of Contents
Last updated: 12/20/2025

End to end example


Introduction


The following end to end example contains:

  • A SoftType toolbox Eurostep.D2M.Domain.Model.
    • Note that this is generated from a sample configuration and has been stripped down for this example.
    • The ShareAspace configuration tool can be used for generating SoftType toolboxes.
  • A custom toolbox MappingFwkDemo.Toolbox.Family.
    • Can deserialize and serialize CSV and .XLSX from/to the "family model".
  • A mapper MappingFwkDemo.Mapper.FamilyToD2M that maps from the "family model" to the "sample D2M model".
  • A Test project MappingFwkDemo.Tests.Mapping.

Family model

Pre-requisites


  • Microsoft .NET 8 SDK
  • IDE, e.g. Visual Studio Code, Visual Studio
  • ShareAspace specific nuget packages
    • Eurostep.ModelFramework.Mapping._VERSION_.nupkg
    • Eurostep.ModelFramework.Mapping.Testing._VERSION_.nupkg
    • Eurostep.ModelFramework.Toolbox._VERSION_.nupkg
  • Additional public nuget packages - handled by project setup.
    • See Directory.Packages.props file in sample package.

Download sample


Caution

Sample code provided in here is for demonstration and educational purposes only. Sample code is not intended for use in a production environments. All production code should always follow development best practices. All sample code is supplied "AS IS" without any warranties or support.

Download sample code

Getting started


  • Place ShareAspace nuget packages in a folder. Note the folder path.
  • Unpackage the MappingFwkDemo.zip archive.
  • Open nuget.config.
    • Set the demo value to the folder path where the ShareAspace nuget packages can be found.
  • Build the sample solution using the same version as the provided ShareAspace nuget packages.
    • or.. open Directory.Packages.props and set the correct version for the ShareAspace nuget package references.

nuget.config example

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="demo" value="C:\temp\182nuget" />
  </packageSources>
</configuration>

Directory.Packages.props example

<!-- ShareAspace private dependencies -->
<PackageVersion Include="Eurostep.ModelFramework.Mapping" Version="1.8.2.38" />
<PackageVersion Include="Eurostep.ModelFramework.Mapping.Testing" Version="1.8.2.38" />
<PackageVersion Include="Eurostep.ModelFramework.Toolbox" Version="1.8.2.38" />