Skip to content

Commit cf617d6

Browse files
authored
Merge pull request #164 from AutoMapper/automapper-11
Upgrade to AutoMapper 11
2 parents 1b87d23 + 496628d commit cf617d6

17 files changed

+75
-75
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
build:
1212
strategy:
1313
fail-fast: false
14-
runs-on: windows-latest
14+
runs-on: windows-2022
1515
steps:
1616
- name: Checkout
1717
uses: actions/checkout@v2

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
build:
99
strategy:
1010
fail-fast: false
11-
runs-on: windows-latest
11+
runs-on: windows-2022
1212
steps:
1313
- name: Checkout
1414
uses: actions/checkout@v2

AutoMapper.Collection.sln

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
3-
# Visual Studio Version 16
4-
VisualStudioVersion = 16.0.29411.108
3+
# Visual Studio Version 17
4+
VisualStudioVersion = 17.1.32210.238
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{578F2483-CF08-409D-A316-31BCB7C5D9D0}"
77
ProjectSection(SolutionItems) = preProject
@@ -20,8 +20,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoMapper.Collection", "sr
2020
EndProject
2121
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoMapper.Collection.EntityFramework", "src\AutoMapper.Collection.EntityFramework\AutoMapper.Collection.EntityFramework.csproj", "{E0FD41FD-AF5B-4BEC-970F-8412E7B6C914}"
2222
EndProject
23-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoMapper.Collection.LinqToSQL", "src\AutoMapper.Collection.LinqToSQL\AutoMapper.Collection.LinqToSQL.csproj", "{A0A023B6-D02A-4CD3-9B3D-3B3022DB001A}"
24-
EndProject
2523
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoMapper.Collection.Tests", "src\AutoMapper.Collection.Tests\AutoMapper.Collection.Tests.csproj", "{2D3D34AD-6A0A-4382-9A2F-894F52D184A7}"
2624
EndProject
2725
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoMapper.Collection.EntityFramework.Tests", "src\AutoMapper.Collection.EntityFramework.Tests\AutoMapper.Collection.EntityFramework.Tests.csproj", "{BDE127AB-AC3F-44DF-BC33-210DAFD12E15}"
@@ -40,10 +38,6 @@ Global
4038
{E0FD41FD-AF5B-4BEC-970F-8412E7B6C914}.Debug|Any CPU.Build.0 = Debug|Any CPU
4139
{E0FD41FD-AF5B-4BEC-970F-8412E7B6C914}.Release|Any CPU.ActiveCfg = Release|Any CPU
4240
{E0FD41FD-AF5B-4BEC-970F-8412E7B6C914}.Release|Any CPU.Build.0 = Release|Any CPU
43-
{A0A023B6-D02A-4CD3-9B3D-3B3022DB001A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
44-
{A0A023B6-D02A-4CD3-9B3D-3B3022DB001A}.Debug|Any CPU.Build.0 = Debug|Any CPU
45-
{A0A023B6-D02A-4CD3-9B3D-3B3022DB001A}.Release|Any CPU.ActiveCfg = Release|Any CPU
46-
{A0A023B6-D02A-4CD3-9B3D-3B3022DB001A}.Release|Any CPU.Build.0 = Release|Any CPU
4741
{2D3D34AD-6A0A-4382-9A2F-894F52D184A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
4842
{2D3D34AD-6A0A-4382-9A2F-894F52D184A7}.Debug|Any CPU.Build.0 = Debug|Any CPU
4943
{2D3D34AD-6A0A-4382-9A2F-894F52D184A7}.Release|Any CPU.ActiveCfg = Release|Any CPU

src/AutoMapper.Collection.EntityFramework.Tests/AutoMapper.Collection.EntityFramework.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net461;netcoreapp3.0</TargetFrameworks>
4+
<TargetFrameworks>net6.0</TargetFrameworks>
55
<AssemblyName>AutoMapper.Collection.EntityFramework.Tests</AssemblyName>
66
<IsPackable>false</IsPackable>
77
</PropertyGroup>

src/AutoMapper.Collection.EntityFramework/AutoMapper.Collection.EntityFramework.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<Description>Collection updating support for EntityFramework with AutoMapper. Extends DBSet&lt;T&gt; with Persist&lt;TDto&gt;().InsertUpdate(dto) and Persist&lt;TDto&gt;().Delete(dto). Will find the matching object and will Insert/Update/Delete.</Description>
55
<Authors>Tyler Carlson</Authors>
6-
<TargetFrameworks>net461;netstandard2.1</TargetFrameworks>
6+
<TargetFrameworks>netstandard2.1</TargetFrameworks>
77
<AssemblyName>AutoMapper.Collection.EntityFramework</AssemblyName>
88
<PackageId>AutoMapper.Collection.EntityFramework</PackageId>
99
<PackageIcon>icon.png</PackageIcon>

src/AutoMapper.Collection.Tests/AutoMapper.Collection.Tests.csproj

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net461;netcoreapp2.0</TargetFrameworks>
4+
<TargetFrameworks>net6.0</TargetFrameworks>
55
<AssemblyName>AutoMapper.Collection.Tests</AssemblyName>
66
<RootNamespace>AutoMapper.Collection</RootNamespace>
77
<IsPackable>false</IsPackable>
@@ -11,11 +11,6 @@
1111
<ProjectReference Include="..\AutoMapper.Collection\AutoMapper.Collection.csproj" />
1212
</ItemGroup>
1313

14-
<ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
15-
<Reference Include="System" />
16-
<Reference Include="Microsoft.CSharp" />
17-
</ItemGroup>
18-
1914
<ItemGroup>
2015
<PackageReference Include="FluentAssertions" Version="$(FluentAssertions)" />
2116
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSDKVersion)" />

src/AutoMapper.Collection.Tests/InheritanceWithCollectionTests.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using AutoMapper.EquivalencyExpression;
22
using System.Collections.Generic;
33
using System.Linq;
4+
using AutoMapper.Internal;
45
using FluentAssertions;
56
using Xunit;
67

@@ -14,7 +15,7 @@ public abstract class InheritanceWithCollectionTests : MappingTestBase
1415
public void TypeMap_Should_include_base_types()
1516
{
1617
var mapper = CreateMapper(ConfigureMapper);
17-
var typeMap = mapper.ConfigurationProvider.ResolveTypeMap(typeof(MailOrderDomain), typeof(OrderEf));
18+
var typeMap = mapper.ConfigurationProvider.Internal().ResolveTypeMap(typeof(MailOrderDomain), typeof(OrderEf));
1819

1920
var typePairs = new[]{
2021
new TypePair(typeof(OrderDomain), typeof(OrderEf))
@@ -26,7 +27,7 @@ public void TypeMap_Should_include_base_types()
2627
public void TypeMap_Should_include_derivied_types()
2728
{
2829
var mapper = CreateMapper(ConfigureMapper);
29-
var typeMap = mapper.ConfigurationProvider.ResolveTypeMap(typeof(OrderDomain), typeof(OrderEf));
30+
var typeMap = mapper.ConfigurationProvider.Internal().ResolveTypeMap(typeof(OrderDomain), typeof(OrderEf));
3031

3132
var typePairs = new[]{
3233
new TypePair(typeof(OnlineOrderDomain), typeof(OnlineOrderEf)),

src/AutoMapper.Collection.Tests/MapCollectionWithEqualityTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -339,9 +339,9 @@ public void Parent_Should_Be_Same_As_Root_Object()
339339
cfg =>
340340
{
341341
cfg.AddCollectionMappers();
342-
cfg.CreateMap<ThingWithCollection, ThingWithCollection>();
342+
cfg.CreateMap<ThingWithCollection, ThingWithCollection>().PreserveReferences();
343343
cfg.CreateMap<ThingCollectionItem, ThingCollectionItem>()
344-
.EqualityComparison((src, dst) => src.ID == dst.ID);
344+
.EqualityComparison((src, dst) => src.ID == dst.ID).PreserveReferences();
345345
});
346346

347347
var root = new ThingWithCollection()

src/AutoMapper.Collection/AutoMapper.Collection.csproj

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@
33
<PropertyGroup>
44
<Description>Collection Add/Remove/Update support for AutoMapper. AutoMapper.Collection adds EqualityComparison Expressions for TypeMaps to determine if Source and Destination type are equivalent to each other when mapping collections.</Description>
55
<Authors>Tyler Carlson</Authors>
6-
<TargetFrameworks>netstandard2.0;net461</TargetFrameworks>
6+
<TargetFrameworks>netstandard2.1</TargetFrameworks>
77
<AssemblyName>AutoMapper.Collection</AssemblyName>
88
<PackageId>AutoMapper.Collection</PackageId>
99
<PackageIcon>icon.png</PackageIcon>
1010
<PackageProjectUrl>https://github.com/AutoMapper/Automapper.Collection</PackageProjectUrl>
11-
<PackageTargetFallback Condition=" '$(TargetFramework)' == 'netstandard1.1' ">$(PackageTargetFallback);portable-net45+win8+dnxcore50;portable-net45+win8</PackageTargetFallback>
1211
<AssemblyOriginatorKeyFile>../Key.snk</AssemblyOriginatorKeyFile>
1312
<ContinuousIntegrationBuild Condition="'$(GITHUB_ACTIONS)' == 'true'">true</ContinuousIntegrationBuild>
1413
<PackageLicenseExpression>MIT</PackageLicenseExpression>
@@ -25,7 +24,7 @@
2524
</ItemGroup>
2625

2726
<ItemGroup>
28-
<PackageReference Include="AutoMapper" Version="[10.0.0, 11.0.0)" />
27+
<PackageReference Include="AutoMapper" Version="[11.0.0, 12.0.0)" />
2928
<PackageReference Include="MinVer" Version="2.3.1">
3029
<PrivateAssets>all</PrivateAssets>
3130
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

src/AutoMapper.Collection/Configuration/GeneratePropertyMapsExpressionFeature.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,29 @@
44
using AutoMapper.Collection.Runtime;
55
using AutoMapper.EquivalencyExpression;
66
using AutoMapper.Features;
7+
using AutoMapper.Internal;
8+
using AutoMapper.Mappers;
79

810
namespace AutoMapper.Collection.Configuration
911
{
1012
public class GeneratePropertyMapsExpressionFeature : IGlobalFeature
1113
{
14+
private readonly ObjectToEquivalencyExpressionByEquivalencyExistingMapper _mapper;
1215
private readonly List<Func<Func<Type, object>, IGeneratePropertyMaps>> _generators = new List<Func<Func<Type, object>, IGeneratePropertyMaps>>();
1316

17+
public GeneratePropertyMapsExpressionFeature(ObjectToEquivalencyExpressionByEquivalencyExistingMapper mapper)
18+
{
19+
_mapper = mapper;
20+
}
21+
1422
public void Add(Func<Func<Type, object>, IGeneratePropertyMaps> creator)
1523
{
1624
_generators.Add(creator);
1725
}
1826

19-
void IGlobalFeature.Configure(IConfigurationProvider configurationProvider)
27+
void IGlobalFeature.Configure(IGlobalConfiguration configurationProvider)
2028
{
29+
_mapper.Configuration = configurationProvider;
2130
var generators = _generators
2231
.Select(x => x.Invoke(configurationProvider.ServiceCtor))
2332
.ToList();

0 commit comments

Comments
 (0)