在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → Riok.Mapperly:.NET 对象映射源码生成器,无需运行时反射

Riok.Mapperly:.NET 对象映射源码生成器,无需运行时反射

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.84M
  • 下载次数:0
  • 浏览次数:5
  • 发布时间:2024-04-08
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 相关标签:

实例介绍

【实例简介】
Riok.Mapperly 是一款专为.NET平台设计的源码生成器,用于生成对象之间的映射代码。由于Mapperly在构建时就完成了映射代码的生成,因此在运行时几乎不会产生额外的性能开销。更重要的是,生成的代码非常清晰,易于验证和阅读。
快速开始:
首先,您需要将Riok.Mapperly的NuGet包添加到您的项目中:
dotnet add package Riok.Mapperly
接下来,创建一个作为部分类的映射器声明,并应用Riok.Mapperly.Abstractions.MapperAttribute属性。Mapperly将为映射器中定义的映射方法生成实现代码。
例如,创建一个CarMapper类:
[Mapper]
public partial class CarMapper
{
    public partial CarDto CarToCarDto(Car car);
}
然后,您可以使用这个映射器将Car对象映射到CarDto对象:
var mapper = new CarMapper();
var car = new Car { NumberOfSeats = 10, ... };
var dto = mapper.CarToCarDto(car);
dto.NumberOfSeats.Should().Be(10);
【实例截图】
【核心代码】
文件清单
└── mapperly-8b7fe25a32425c262a1e5c119a97e0a4bf910e55
    ├── benchmarks
    │   └── Riok.Mapperly.Benchmarks
    │       ├── MappingBenchmarks.cs
    │       ├── Program.cs
    │       ├── Riok.Mapperly.Benchmarks.csproj
    │       └── SourceGeneratorBenchmarks.cs
    ├── build
    │   └── package.sh
    ├── CODE_OF_CONDUCT.md
    ├── CONTRIBUTING.md
    ├── Directory.Build.props
    ├── docs
    │   ├── babel.config.js
    │   ├── docs
    │   │   ├── breaking-changes
    │   │   │   └── 3-0.md
    │   │   ├── configuration
    │   │   │   ├── analyzer-diagnostics.mdx
    │   │   │   ├── before-after-map.md
    │   │   │   ├── conversions.md
    │   │   │   ├── ctor-mappings.md
    │   │   │   ├── derived-type-mapping.md
    │   │   │   ├── enum.mdx
    │   │   │   ├── existing-target.md
    │   │   │   ├── flattening.md
    │   │   │   ├── generated-source.mdx
    │   │   │   ├── generic-mapping.md
    │   │   │   ├── mapper.mdx
    │   │   │   ├── object-factories.md
    │   │   │   ├── private-member-mapping.md
    │   │   │   ├── queryable-projections.mdx
    │   │   │   ├── reference-handling.md
    │   │   │   ├── static-mappers.md
    │   │   │   └── user-implemented-methods.mdx
    │   │   ├── contributing
    │   │   │   ├── architecture.md
    │   │   │   ├── common-tasks.md
    │   │   │   ├── debugging.md
    │   │   │   ├── docs.md
    │   │   │   ├── index.md
    │   │   │   └── tests.md
    │   │   ├── getting-started
    │   │   │   ├── faq.md
    │   │   │   ├── first-mapper.md
    │   │   │   ├── generated-mapper-example.mdx
    │   │   │   └── installation.mdx
    │   │   └── intro.md
    │   ├── docusaurus.config.js
    │   ├── package.json
    │   ├── package-lock.json
    │   ├── prebuild.ts
    │   ├── sidebars.js
    │   ├── src
    │   │   ├── components
    │   │   │   ├── AnalyzerRules.tsx
    │   │   │   ├── Conditional.tsx
    │   │   │   ├── HomepageFeatures
    │   │   │   │   ├── index.tsx
    │   │   │   │   └── styles.module.css
    │   │   │   └── NavbarItems
    │   │   │       └── VersionsNavbarItem
    │   │   │           ├── index.tsx
    │   │   │           └── styles.module.css
    │   │   ├── css
    │   │   │   └── custom.css
    │   │   ├── custom-fields.ts
    │   │   ├── pages
    │   │   │   ├── index.module.css
    │   │   │   └── index.tsx
    │   │   ├── plugins
    │   │   │   └── rehype
    │   │   │       └── rehype-faq
    │   │   │           ├── index.js
    │   │   │           └── package.json
    │   │   └── theme
    │   │       └── NavbarItem
    │   │           └── ComponentTypes.js
    │   ├── static
    │   │   └── img
    │   │       ├── easy-to-use.svg
    │   │       ├── fast-reliable.svg
    │   │       ├── logo.png
    │   │       ├── logo.svg
    │   │       ├── powered-by.svg
    │   │       └── riok-logo-grayscale.svg
    │   └── tsconfig.json
    ├── global.json
    ├── LICENSE
    ├── README.md
    ├── Riok.Mapperly.sln
    ├── samples
    │   └── Riok.Mapperly.Sample
    │       ├── Car.cs
    │       ├── CarDto.cs
    │       ├── CarMapper.cs
    │       ├── Program.cs
    │       └── Riok.Mapperly.Sample.csproj
    ├── src
    │   ├── Directory.Build.props
    │   ├── Riok.Mapperly
    │   │   ├── AnalyzerReleases.Shipped.md
    │   │   ├── AnalyzerReleases.Unshipped.md
    │   │   ├── BannedSymbols.txt
    │   │   ├── Configuration
    │   │   │   ├── AttributeDataAccessor.cs
    │   │   │   ├── DerivedTypeMappingConfiguration.cs
    │   │   │   ├── EnumConfiguration.cs
    │   │   │   ├── EnumMappingConfiguration.cs
    │   │   │   ├── EnumValueMappingConfiguration.cs
    │   │   │   ├── HasSyntaxReference.cs
    │   │   │   ├── MapperConfiguration.cs
    │   │   │   ├── MapperConfigurationMerger.cs
    │   │   │   ├── MapperConfigurationReader.cs
    │   │   │   ├── MapperIgnoreEnumValueConfiguration.cs
    │   │   │   ├── MappingConfiguration.cs
    │   │   │   ├── MappingConfigurationReference.cs
    │   │   │   ├── PropertiesMappingConfiguration.cs
    │   │   │   ├── PropertyMappingConfiguration.cs
    │   │   │   ├── StringMemberPath.cs
    │   │   │   └── UseStaticMapperConfiguration.cs
    │   │   ├── Descriptors
    │   │   │   ├── DescriptorBuilder.cs
    │   │   │   ├── Enumerables
    │   │   │   │   ├── CollectionInfoBuilder.cs
    │   │   │   │   ├── CollectionInfo.cs
    │   │   │   │   ├── CollectionInfos.cs
    │   │   │   │   ├── CollectionType.cs
    │   │   │   │   └── EnsureCapacity
    │   │   │   │       ├── EnsureCapacityBuilder.cs
    │   │   │   │       ├── EnsureCapacityInfo.cs
    │   │   │   │       ├── EnsureCapacityMember.cs
    │   │   │   │       └── EnsureCapacityNonEnumerated.cs
    │   │   │   ├── ExternalMappings
    │   │   │   │   └── ExternalMappingsExtractor.cs
    │   │   │   ├── FormatProviders
    │   │   │   │   ├── FormatProviderBuilder.cs
    │   │   │   │   ├── FormatProviderCollection.cs
    │   │   │   │   └── FormatProvider.cs
    │   │   │   ├── InlineExpressionMappingBuilderContext.cs
    │   │   │   ├── MapperDescriptor.cs
    │   │   │   ├── MappingBodyBuilders
    │   │   │   │   ├── BuilderContext
    │   │   │   │   │   ├── IMembersBuilderContext.cs
    │   │   │   │   │   ├── IMembersContainerBuilderContext.cs
    │   │   │   │   │   ├── INewInstanceBuilderContext.cs
    │   │   │   │   │   ├── INewValueTupleBuilderContext.cs
    │   │   │   │   │   ├── MembersContainerBuilderContext.cs
    │   │   │   │   │   ├── MembersMappingBuilderContext.cs
    │   │   │   │   │   ├── NewInstanceBuilderContext.cs
    │   │   │   │   │   ├── NewInstanceContainerBuilderContext.cs
    │   │   │   │   │   ├── NewValueTupleConstructorBuilderContext.cs
    │   │   │   │   │   └── NewValueTupleExpressionBuilderContext.cs
    │   │   │   │   ├── MappingBodyBuilder.cs
    │   │   │   │   ├── NewInstanceObjectMemberMappingBodyBuilder.cs
    │   │   │   │   ├── NewValueTupleMappingBodyBuilder.cs
    │   │   │   │   ├── ObjectMemberMappingBodyBuilder.cs
    │   │   │   │   ├── RuntimeTargetTypeMappingBodyBuilder.cs
    │   │   │   │   └── UserMethodMappingBodyBuilder.cs
    │   │   │   ├── MappingBuilderContext.cs
    │   │   │   ├── MappingBuilders
    │   │   │   │   ├── CtorMappingBuilder.cs
    │   │   │   │   ├── DateTimeToDateOnlyMappingBuilder.cs
    │   │   │   │   ├── DateTimeToTimeOnlyMappingBuilder.cs
    │   │   │   │   ├── DerivedTypeMappingBuilder.cs
    │   │   │   │   ├── DictionaryMappingBuilder.cs
    │   │   │   │   ├── DirectAssignmentMappingBuilder.cs
    │   │   │   │   ├── EnumerableMappingBuilder.cs
    │   │   │   │   ├── EnumMappingBuilder.cs
    │   │   │   │   ├── EnumToStringMappingBuilder.cs
    │   │   │   │   ├── ExistingTargetMappingBuilder.cs
    │   │   │   │   ├── ExplicitCastMappingBuilder.cs
    │   │   │   │   ├── ImplicitCastMappingBuilder.cs
    │   │   │   │   ├── MappingBuilder.cs
    │   │   │   │   ├── MemoryMappingBuilder.cs
    │   │   │   │   ├── NewInstanceObjectMemberMappingBuilder.cs
    │   │   │   │   ├── NullableMappingBuilder.cs
    │   │   │   │   ├── ParseMappingBuilder.cs
    │   │   │   │   ├── QueryableMappingBuilder.cs
    │   │   │   │   ├── SpanMappingBuilder.cs
    │   │   │   │   ├── StringToEnumMappingBuilder.cs
    │   │   │   │   ├── ToObjectMappingBuilder.cs
    │   │   │   │   └── ToStringMappingBuilder.cs
    │   │   │   ├── MappingBuildingOptions.cs
    │   │   │   ├── MappingCollection.cs
    │   │   │   ├── Mappings
    │   │   │   │   ├── ArrayCloneMapping.cs
    │   │   │   │   ├── ArrayForEachMapping.cs
    │   │   │   │   ├── ArrayForMapping.cs
    │   │   │   │   ├── CastMapping.cs
    │   │   │   │   ├── CtorMapping.cs
    │   │   │   │   ├── DelegateMapping.cs
    │   │   │   │   ├── DerivedExistingTargetTypeSwitchMapping.cs
    │   │   │   │   ├── DerivedTypeIfExpressionMapping.cs
    │   │   │   │   ├── DerivedTypeSwitchMapping.cs
    │   │   │   │   ├── DirectAssignmentMapping.cs
    │   │   │   │   ├── Enums
    │   │   │   │   │   ├── EnumCastMapping.cs
    │   │   │   │   │   ├── EnumFallbackValueMapping.cs
    │   │   │   │   │   ├── EnumFromStringParseMapping.cs
    │   │   │   │   │   ├── EnumFromStringSwitchMapping.cs
    │   │   │   │   │   ├── EnumNameMapping.cs
    │   │   │   │   │   └── EnumToStringMapping.cs
    │   │   │   │   ├── ExistingTarget
    │   │   │   │   │   ├── ExistingTargetMapping.cs
    │   │   │   │   │   ├── ExistingTargetMappingMethodWrapper.cs
    │   │   │   │   │   ├── ForEachAddEnumerableExistingTargetMapping.cs
    │   │   │   │   │   ├── ForEachSetDictionaryExistingTargetMapping.cs
    │   │   │   │   │   ├── IExistingTargetMapping.cs
    │   │   │   │   │   ├── NullDelegateExistingTargetMapping.cs
    │   │   │   │   │   ├── ObjectMemberExistingTargetMapping.cs
    │   │   │   │   │   └── SourceObjectMemberDelegateExistingTargetMapping.cs
    │   │   │   │   ├── ForEachAddEnumerableMapping.cs
    │   │   │   │   ├── ForEachSetDictionaryMapping.cs
    │   │   │   │   ├── IMapping.cs
    │   │   │   │   ├── INewInstanceMapping.cs
    │   │   │   │   ├── INewInstanceObjectMemberMapping.cs
    │   │   │   │   ├── INewValueTupleMapping.cs
    │   │   │   │   ├── ITypeMapping.cs
    │   │   │   │   ├── LinqConstructorMapping.cs
    │   │   │   │   ├── LinqDictionaryMapping.cs
    │   │   │   │   ├── LinqEnumerableMapping.cs
    │   │   │   │   ├── MappingBodyBuildingPriority.cs
    │   │   │   │   ├── MemberMappings
    │   │   │   │   │   ├── ConstructorParameterMapping.cs
    │   │   │   │   │   ├── IMemberAssignmentMappingContainer.cs
    │   │   │   │   │   ├── IMemberAssignmentMapping.cs
    │   │   │   │   │   ├── IMemberAssignmentTypeMapping.cs
    │   │   │   │   │   ├── IMemberMapping.cs
    │   │   │   │   │   ├── MemberAssignmentMappingContainer.cs
    │   │   │   │   │   ├── MemberAssignmentMapping.cs
    │   │   │   │   │   ├── MemberExistingTargetMapping.cs
    │   │   │   │   │   ├── MemberMapping.cs
    │   │   │   │   │   ├── MemberNullAssignmentInitializerMapping.cs
    │   │   │   │   │   ├── MemberNullDelegateAssignmentMapping.cs
    │   │   │   │   │   ├── MethodMemberNullAssignmentInitializerMapping.cs
    │   │   │   │   │   ├── NullMemberMapping.cs
    │   │   │   │   │   ├── UnsafeAccess
    │   │   │   │   │   │   ├── IUnsafeAccessor.cs
    │   │   │   │   │   │   ├── UnsafeFieldAccessor.cs
    │   │   │   │   │   │   ├── UnsafeGetPropertyAccessor.cs
    │   │   │   │   │   │   └── UnsafeSetPropertyAccessor.cs
    │   │   │   │   │   └── ValueTupleConstructorParameterMapping.cs
    │   │   │   │   ├── MethodMapping.cs
    │   │   │   │   ├── NewInstanceMapping.cs
    │   │   │   │   ├── NewInstanceObjectFactoryMemberMapping.cs
    │   │   │   │   ├── NewInstanceObjectMemberMapping.cs
    │   │   │   │   ├── NewInstanceObjectMemberMethodMapping.cs
    │   │   │   │   ├── NewValueTupleConstructorMapping.cs
    │   │   │   │   ├── NewValueTupleExpressionMapping.cs
    │   │   │   │   ├── NullDelegateMapping.cs
    │   │   │   │   ├── NullDelegateMethodMapping.cs
    │   │   │   │   ├── NullFallbackValue.cs
    │   │   │   │   ├── ObjectMemberMethodMapping.cs
    │   │   │   │   ├── QueryableProjectionMapping.cs
    │   │   │   │   ├── SourceObjectMemberMapping.cs
    │   │   │   │   ├── SourceObjectMethodMapping.cs
    │   │   │   │   ├── StaticMethodMapping.cs
    │   │   │   │   ├── ToStringMapping.cs
    │   │   │   │   ├── TypeMappingBuildContext.cs
    │   │   │   │   └── UserMappings
    │   │   │   │       ├── IDelegateUserMapping.cs
    │   │   │   │       ├── IUserMapping.cs
    │   │   │   │       ├── UserDefinedExistingTargetMethodMapping.cs
    │   │   │   │       ├── UserDefinedNewInstanceGenericTypeMapping.cs
    │   │   │   │       ├── UserDefinedNewInstanceMethodMapping.cs
    │   │   │   │       ├── UserDefinedNewInstanceRuntimeTargetTypeMapping.cs
    │   │   │   │       ├── UserDefinedNewInstanceRuntimeTargetTypeParameterMapping.cs
    │   │   │   │       ├── UserImplementedExistingTargetMethodMapping.cs
    │   │   │   │       └── UserImplementedMethodMapping.cs
    │   │   │   ├── MemberPathCandidateBuilder.cs
    │   │   │   ├── ObjectFactories
    │   │   │   │   ├── GenericSourceObjectFactory.cs
    │   │   │   │   ├── GenericSourceTargetObjectFactory.cs
    │   │   │   │   ├── GenericTargetObjectFactory.cs
    │   │   │   │   ├── GenericTargetObjectFactoryWithSource.cs
    │   │   │   │   ├── ObjectFactoryBuilder.cs
    │   │   │   │   ├── ObjectFactoryCollection.cs
    │   │   │   │   ├── ObjectFactory.cs
    │   │   │   │   ├── SimpleObjectFactory.cs
    │   │   │   │   └── SimpleObjectFactoryWithSource.cs
    │   │   │   ├── SimpleMappingBuilderContext.cs
    │   │   │   ├── SymbolAccessor.cs
    │   │   │   ├── TypeMappingConfiguration.cs
    │   │   │   ├── TypeMappingKey.cs
    │   │   │   ├── UnsafeAccessorContext.cs
    │   │   │   ├── UserMethodMappingExtractor.cs
    │   │   │   └── WellKnownTypes.cs
    │   │   ├── Diagnostics
    │   │   │   ├── DiagnosticCategories.cs
    │   │   │   ├── DiagnosticCollection.cs
    │   │   │   └── DiagnosticDescriptors.cs
    │   │   ├── Emit
    │   │   │   ├── ReferenceHandlingSyntaxFactoryHelper.cs
    │   │   │   ├── SourceEmitterContext.cs
    │   │   │   ├── SourceEmitter.cs
    │   │   │   ├── Syntax
    │   │   │   │   ├── SyntaxFactoryHelper.Array.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Attribute.cs
    │   │   │   │   ├── SyntaxFactoryHelper.BitOperation.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Condition.cs
    │   │   │   │   ├── SyntaxFactoryHelper.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Exception.cs
    │   │   │   │   ├── SyntaxFactoryHelper.GeneratedCode.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Invocation.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Lambda.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Literal.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Loop.cs
    │   │   │   │   ├── SyntaxFactoryHelper.MemberAccess.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Method.cs
    │   │   │   │   ├── SyntaxFactoryHelper.New.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Null.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Pattern.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Return.cs
    │   │   │   │   ├── SyntaxFactoryHelper.String.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Switch.cs
    │   │   │   │   ├── SyntaxFactoryHelper.SymbolDeclaration.cs
    │   │   │   │   ├── SyntaxFactoryHelper.Token.cs
    │   │   │   │   └── SyntaxIndentationExtensions.cs
    │   │   │   └── UnsafeAccessorEmitter.cs
    │   │   ├── Helpers
    │   │   │   ├── CompilationExtensions.cs
    │   │   │   ├── DebuggerUtil.cs
    │   │   │   ├── DictionaryExtensions.cs
    │   │   │   ├── EnumerableExtensions.cs
    │   │   │   ├── FieldSymbolEqualityComparer.cs
    │   │   │   ├── FileNameBuilder.cs
    │   │   │   ├── HashSetExtensions.cs
    │   │   │   ├── ImmutableEquatableArray.cs
    │   │   │   ├── IncrementalValuesProviderExtensions.cs
    │   │   │   ├── IncrementalValuesProviderExtensions.Roslyn4.0.cs
    │   │   │   ├── MethodNameBuilder.cs
    │   │   │   ├── NullableSymbolExtensions.cs
    │   │   │   ├── PriorityQueueExtensions.cs
    │   │   │   ├── SymbolExtensions.cs
    │   │   │   └── UniqueNameBuilder.cs
    │   │   ├── MapperGenerator.cs
    │   │   ├── MapperGeneratorStepNames.cs
    │   │   ├── Output
    │   │   │   ├── MapperAndDiagnostics.cs
    │   │   │   └── MapperNode.cs
    │   │   ├── Properties
    │   │   │   └── launchSettings.json
    │   │   ├── Riok.Mapperly.csproj
    │   │   ├── Riok.Mapperly.Roslyn4.0.props
    │   │   ├── Riok.Mapperly.Roslyn4.4.props
    │   │   ├── Riok.Mapperly.Roslyn4.5.props
    │   │   ├── Riok.Mapperly.Roslyn4.7.props
    │   │   ├── Riok.Mapperly.targets
    │   │   ├── Symbols
    │   │   │   ├── CompilationContext.cs
    │   │   │   ├── FieldMember.cs
    │   │   │   ├── GenericMappingTypeParameters.cs
    │   │   │   ├── GetterMemberPath.cs
    │   │   │   ├── IMappableMember.cs
    │   │   │   ├── MappableMember.cs
    │   │   │   ├── MapperDeclaration.cs
    │   │   │   ├── MappingMethodParameters.cs
    │   │   │   ├── MemberPath.cs
    │   │   │   ├── MethodAccessorMember.cs
    │   │   │   ├── MethodArgument.cs
    │   │   │   ├── MethodParameter.cs
    │   │   │   ├── PropertyMember.cs
    │   │   │   ├── RuntimeTargetTypeMapping.cs
    │   │   │   ├── RuntimeTargetTypeMappingMethodParameters.cs
    │   │   │   └── SetterMemberPath.cs
    │   │   ├── SyntaxProvider.Roslyn4.0.cs
    │   │   └── SyntaxProvider.Roslyn4.4.cs
    │   └── Riok.Mapperly.Abstractions
    │       ├── EnumMappingStrategy.cs
    │       ├── FormatProviderAttribute.cs
    │       ├── IgnoreObsoleteMembersStrategy.cs
    │       ├── MapDerivedTypeAttribute.cs
    │       ├── MapEnumAttribute.cs
    │       ├── MapEnumValueAttribute.cs
    │       ├── MapperAttribute.cs
    │       ├── MapperConstructorAttribute.cs
    │       ├── MapperDefaultsAttribute.cs
    │       ├── MapperIgnoreObsoleteMembersAttribute.cs
    │       ├── MapperIgnoreSourceAttribute.cs
    │       ├── MapperIgnoreSourceValueAttribute.cs
    │       ├── MapperIgnoreTargetAttribute.cs
    │       ├── MapperIgnoreTargetValueAttribute.cs
    │       ├── MapperRequiredMappingAttribute.cs
    │       ├── MappingConversionType.cs
    │       ├── MapPropertyAttribute.cs
    │       ├── MemberVisibility.cs
    │       ├── ObjectFactoryAttribute.cs
    │       ├── PropertyNameMappingStrategy.cs
    │       ├── PublicAPI.Shipped.txt
    │       ├── PublicAPI.Unshipped.txt
    │       ├── ReferenceHandling
    │       │   ├── IReferenceHandler.cs
    │       │   ├── PreserveReferenceHandler.cs
    │       │   └── ReferenceHandlerAttribute.cs
    │       ├── RequiredMappingStrategy.cs
    │       ├── Riok.Mapperly.Abstractions.csproj
    │       ├── UseMapperAttribute.cs
    │       └── UseStaticMapperAttribute.cs
    └── test
        ├── Directory.Build.props
        ├── Directory.Build.targets
        ├── Riok.Mapperly.Abstractions.Tests
        │   ├── AbstractionsArchTests.cs
        │   ├── Helpers
        │   │   ├── ArchTestResultAssertions.cs
        │   │   ├── ConditionalAttributeSymbolRule.cs
        │   │   └── FluentAssertionsExtensions.cs
        │   ├── MapPropertyAttributeTest.cs
        │   ├── ReferenceHandling
        │   │   └── PreserveReferenceHandlerTest.cs
        │   └── Riok.Mapperly.Abstractions.Tests.csproj
        ├── Riok.Mapperly.IntegrationTests
        │   ├── BaseMapperTest.cs
        │   ├── CircularReferenceMapperTest.cs
        │   ├── DeepCloningMapperTest.cs
        │   ├── DerivedMapperTest.cs
        │   ├── Dto
        │   │   ├── CircularReferenceDto.cs
        │   │   ├── IdObjectDto.cs
        │   │   ├── InheritanceBaseObjectDto.cs
        │   │   ├── InheritanceSubObjectDto.cs
        │   │   ├── TestEnumDtoAdditionalValue.cs
        │   │   ├── TestEnumDtoByName.cs
        │   │   ├── TestEnumDtoByValue.cs
        │   │   ├── TestFlagsEnumDto.cs
        │   │   ├── TestObjectDto.cs
        │   │   ├── TestObjectDtoManuallyMappedProjection.cs
        │   │   ├── TestObjectDtoProjectionBaseType.cs
        │   │   ├── TestObjectDtoProjection.cs
        │   │   ├── TestObjectDtoProjectionTypeA.cs
        │   │   ├── TestObjectDtoProjectionTypeB.cs
        │   │   └── TestObjectNestedDto.cs
        │   ├── Helpers
        │   │   ├── PortableDateOnlyConverter.cs
        │   │   ├── PortableTimeOnlyConverter.cs
        │   │   ├── VersionedSnapshotAttribute.cs
        │   │   └── Versions.cs
        │   ├── Mapper
        │   │   ├── CircularReferenceMapper.cs
        │   │   ├── DeepCloningMapper.cs
        │   │   ├── DerivedMapper.cs
        │   │   ├── EnumMapper.cs
        │   │   ├── MapperDefaults.cs
        │   │   ├── NestedMapper.cs
        │   │   ├── ProjectionMapper.cs
        │   │   ├── StaticTestMapper.cs
        │   │   ├── TestMapper.cs
        │   │   └── UseExternalMapper.cs
        │   ├── MapperDefaultsTest.cs
        │   ├── MapperTest.cs
        │   ├── Models
        │   │   ├── CircularReferenceObject.cs
        │   │   ├── ExistingObjectBase.cs
        │   │   ├── ExistingObjectTypeA.cs
        │   │   ├── ExistingObjectTypeB.cs
        │   │   ├── IdObject.cs
        │   │   ├── InheritanceBaseObject.cs
        │   │   ├── InheritanceSubObject.cs
        │   │   ├── TestEnum.cs
        │   │   ├── TestFlagsEnum.cs
        │   │   ├── TestObject.cs
        │   │   ├── TestObjectNested.cs
        │   │   ├── TestObjectProjectionBaseType.cs
        │   │   ├── TestObjectProjection.cs
        │   │   ├── TestObjectProjectionEnumValue.cs
        │   │   ├── TestObjectProjectionTypeA.cs
        │   │   └── TestObjectProjectionTypeB.cs
        │   ├── NestedMapperTest.cs
        │   ├── ProjectionMapperTest.cs
        │   ├── Riok.Mapperly.IntegrationTests.csproj
        │   ├── _snapshots
        │   │   ├── CircularReferenceMapperTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── DeepCloningMapperTest.RunMappingShouldWork_NET6_0.verified.txt
        │   │   ├── DeepCloningMapperTest.RunMappingShouldWork.verified.txt
        │   │   ├── DeepCloningMapperTest.SnapshotGeneratedSource_NET6_0.verified.cs
        │   │   ├── DeepCloningMapperTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── DerivedMapperTest.SnapshotGeneratedSourceBaseMapper.verified.cs
        │   │   ├── DerivedMapperTest.SnapshotGeneratedSourceDerivedMapper2.verified.cs
        │   │   ├── DerivedMapperTest.SnapshotGeneratedSourceDerivedMapper.verified.cs
        │   │   ├── MapperDefaultsTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── MapperTest.RunMappingShouldWork_NET6_0.verified.txt
        │   │   ├── MapperTest.RunMappingShouldWork_NET8_0.verified.txt
        │   │   ├── MapperTest.RunMappingShouldWork.verified.txt
        │   │   ├── MapperTest.SnapshotGeneratedSource_NET6_0.verified.cs
        │   │   ├── MapperTest.SnapshotGeneratedSource_NET8_0.verified.cs
        │   │   ├── MapperTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── NestedMapperTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── ProjectionMapperTest.DerivedTypesProjectionShouldTranslateToQuery.verified.sql
        │   │   ├── ProjectionMapperTest.DerivedTypesProjectionShouldTranslateToResult.verified.txt
        │   │   ├── ProjectionMapperTest.ProjectionShouldTranslateToQuery_NET8_0.verified.sql
        │   │   ├── ProjectionMapperTest.ProjectionShouldTranslateToQuery.verified.sql
        │   │   ├── ProjectionMapperTest.ProjectionShouldTranslateToResult.verified.txt
        │   │   ├── ProjectionMapperTest.SnapshotGeneratedSource_NET6_0.verified.cs
        │   │   ├── ProjectionMapperTest.SnapshotGeneratedSource.verified.cs
        │   │   ├── StaticMapperTest.RunExtensionMappingShouldWork_NET6_0.verified.txt
        │   │   ├── StaticMapperTest.RunExtensionMappingShouldWork.verified.txt
        │   │   ├── StaticMapperTest.RunMappingShouldWork_NET6_0.verified.txt
        │   │   ├── StaticMapperTest.RunMappingShouldWork.verified.txt
        │   │   ├── StaticMapperTest.SnapshotGeneratedSource_NET6_0.verified.cs
        │   │   ├── StaticMapperTest.SnapshotGeneratedSource.verified.cs
        │   │   └── UseExternalMapperTest.SnapshotGeneratedSource.verified.cs
        │   ├── StaticMapperTest.cs
        │   └── UseExternalMapperTest.cs
        └── Riok.Mapperly.Tests
            ├── Descriptors
            │   └── MemberPathCandidateBuilderTest.cs
            ├── GeneratedMethod.cs
            ├── Generator
            │   ├── IncrementalGeneratorRunReasons.cs
            │   ├── IncrementalGeneratorTest.cs
            │   └── IncrementalGeneratorTestHelper.cs
            ├── Helpers
            │   ├── DictionaryExtensionsTest.cs
            │   ├── EnumerableExtensionsTest.cs
            │   ├── HashSetExtensionsTest.cs
            │   ├── ImmutableEquatableArrayTest.cs
            │   ├── MapperConfigurationBuilderTest.cs
            │   ├── MethodNameBuilderTest.cs
            │   └── UniqueNameBuilderTest.cs
            ├── MapperGenerationResultAssertions.cs
            ├── MapperGenerationResult.cs
            ├── Mapping
            │   ├── CastTest.cs
            │   ├── CtorTest.cs
            │   ├── DateTimeTest.cs
            │   ├── DelegateTest.cs
            │   ├── DerivedExistingTargetTypeTest.cs
            │   ├── DerivedTypeTest.cs
            │   ├── DictionaryImmutableTest.cs
            │   ├── DictionaryTest.cs
            │   ├── DirectAssignmentDeepCloningTest.cs
            │   ├── EnumerableDeepCloningTest.cs
            │   ├── EnumerableExistingTargetTest.cs
            │   ├── EnumerableImmutableTest.cs
            │   ├── EnumerableSetTest.cs
            │   ├── EnumerableTest.cs
            │   ├── EnumExplicitMapTest.cs
            │   ├── EnumFallbackValueTest.cs
            │   ├── EnumIgnoreTest.cs
            │   ├── EnumTest.cs
            │   ├── ExtensionMethodTest.cs
            │   ├── GenericDerivedTypeTest.cs
            │   ├── GenericTest.cs
            │   ├── IgnoreObsoleteTest.cs
            │   ├── InheritanceTest.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.cs
            │   ├── MapperTest.cs
            │   ├── MemoryTest.cs
            │   ├── NullableTest.cs
            │   ├── ObjectFactoryTest.cs
            │   ├── ObjectFieldTest.cs
            │   ├── ObjectPropertyConstructorResolverTest.cs
            │   ├── ObjectPropertyFlatteningTest.cs
            │   ├── ObjectPropertyIgnoreTest.cs
            │   ├── ObjectPropertyInitPropertyTest.cs
            │   ├── ObjectPropertyNullableTest.cs
            │   ├── ObjectPropertyTest.cs
            │   ├── ObjectVisibilityTest.cs
            │   ├── ParseTest.cs
            │   ├── QueryableProjectionDerivedTypeTest.cs
            │   ├── QueryableProjectionEnumerableTest.cs
            │   ├── QueryableProjectionEnumTest.cs
            │   ├── QueryableProjectionNullableTest.cs
            │   ├── QueryableProjectionTest.cs
            │   ├── ReferenceHandlingTest.cs
            │   ├── RequiredMappingTest.cs
            │   ├── RuntimeTargetTypeMappingTest.cs
            │   ├── SameTypeTest.cs
            │   ├── SpanTest.cs
            │   ├── ToObjectDeepCloningTest.cs
            │   ├── ToObjectTypeTest.cs
            │   ├── ToStringFormattedTest.cs
            │   ├── ToStringTest.cs
            │   ├── UnsafeAccessorTest.cs
            │   ├── UseMapperTest.cs
            │   ├── UserMethodTest.cs
            │   ├── UseStaticMapperTest.cs
            │   └── ValueTupleTest.cs
            ├── ModuleInitializer.cs
            ├── Riok.Mapperly.Tests.csproj
            ├── _snapshots
            │   ├── DerivedExistingTargetTypeTest.WithAbstractBaseClassAndNonGenericInterfaceShouldWork#Mapper.g.verified.cs
            │   ├── DerivedExistingTargetTypeTest.WithAbstractBaseClassShouldWork#Mapper.g.verified.cs
            │   ├── DerivedExistingTargetTypeTest.WithBaseTypeConfigShouldWork#Mapper.g.verified.cs
            │   ├── DerivedExistingTargetTypeTest.WithInterfaceShouldWork#Mapper.g.verified.cs
            │   ├── DerivedExistingTargetTypeTest.WithInterfaceSourceAndTargetNullableShouldWork#Mapper.g.verified.cs
            │   ├── DerivedExistingTargetTypeTest.WithInterfaceSourceNullableShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithAbstractBaseClassAndNonGenericInterfaceShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithAbstractBaseClassShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithBaseTypeConfigAndSeparateMethodShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithBaseTypeConfigShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithEnumerableOfInterfaceShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithInterfacePropertyShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithInterfaceShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithInterfaceSourceAndTargetNullableShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithInterfaceSourceNullableShouldWork#Mapper.g.verified.cs
            │   ├── DerivedTypeTest.WithObjectShouldWork#Mapper.g.verified.cs
            │   ├── DictionaryTest.DictionaryShouldReuseForReadOnlyDictionaryImplementorsButDifferentForIDictionary#Mapper.g.verified.cs
            │   ├── DictionaryTest.DictionaryToCustomDictionaryWithPrivateCtorShouldDiagnostic#Mapper.g.verified.cs
            │   ├── DictionaryTest.DictionaryToCustomDictionaryWithPrivateCtorShouldDiagnostic.verified.txt
            │   ├── EnumerableExistingTargetTest.MapToExistingCollectionShouldWork#Mapper.g.verified.cs
            │   ├── EnumerableExistingTargetTest.MapToExistingQueueShouldWork#Mapper.g.verified.cs
            │   ├── EnumerableExistingTargetTest.MapToExistingStackShouldWork#Mapper.g.verified.cs
            │   ├── EnumerableTest.ArrayToCollectionShouldUpgradeNullability#Mapper.g.verified.cs
            │   ├── EnumerableTest.ArrayToReadOnlyCollectionShouldUpgradeNullability#Mapper.g.verified.cs
            │   ├── EnumerableTest.CollectionToReadOnlyCollectionShouldUpgradeNullability#Mapper.g.verified.cs
            │   ├── EnumerableTest.EnumerableShouldReuseForReadOnlyCollectionImplementorsButDifferentForICollection#Mapper.g.verified.cs
            │   ├── EnumerableTest.MapToReadOnlyCollectionPropertyFromNullable#Mapper.g.verified.cs
            │   ├── EnumerableTest.MapToReadOnlyCollectionProperty#Mapper.g.verified.cs
            │   ├── EnumerableTest.MapToReadOnlyNullableCollectionPropertyFromNullable#Mapper.g.verified.cs
            │   ├── EnumerableTest.MapToReadOnlyNullableCollectionProperty#Mapper.g.verified.cs
            │   ├── EnumerableTest.MapToReadOnlyNullableICollectionProperty#Mapper.g.verified.cs
            │   ├── EnumerableTest.ShouldUpgradeNullabilityInDisabledNullableContextInSelectClause#Mapper.g.verified.cs
            │   ├── EnumerableTest.ShouldUpgradeNullabilityOfGenericInDisabledNullableContext#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=SourceLower#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=SourceLowerMissingSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=SourceLowerMissingSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLower#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingMultipleSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingMultipleSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingMultipleTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingMultipleTarget.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByNameCaseInsensitive_testCase=TargetLowerMissingTarget.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameEqual#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingMultipleSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingMultipleSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingMultipleTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingMultipleTarget.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByNameMissingTarget.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueEqual#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingMultipleSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingMultipleSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingMultipleTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingMultipleTarget.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingSource#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingSource.verified.txt
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingTarget#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToAnotherEnumByStrategyMissingValues_testCase=ByValueMissingTarget.verified.txt
            │   ├── EnumTest.EnumToOtherEnumByNameWithoutOverlap#Mapper.g.verified.cs
            │   ├── EnumTest.EnumToOtherEnumByNameWithoutOverlap.verified.txt
            │   ├── ExtensionMethodTest.ExtensionMapMethodShouldWork#Mapper.g.verified.cs
            │   ├── ExtensionMethodTest.ExtensionUpdateMethodShouldWork#Mapper.g.verified.cs
            │   ├── GenericTest.WithGenericSourceAndTargetAndEnabledReferenceHandlingAndParameter#Mapper.g.verified.cs
            │   ├── GenericTest.WithGenericSourceAndTargetAndEnabledReferenceHandling#Mapper.g.verified.cs
            │   ├── GenericTest.WithGenericSourceAndTarget#Mapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.IgnoreInstanceMethodFromStaticMapper#Mapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.MapperInNestedClassShouldWork#CarFeature.Mappers.CarMapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.MappingWithUserMappingShouldWork#CarMapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.NestedMappingShouldWork#CarMapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.ShouldUseSimpleObjectFactory#CarMapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.StaticPartialMethod#Mapper.g.verified.cs
            │   ├── InstantiableMapperWithStaticMethodsTest.UseStaticGenericMapperStaticMethod#Mapper.g.verified.cs
            │   ├── MapperTest.AssemblyAttributeShouldWork#MyMapper.g.verified.cs
            │   ├── MapperTest.MapperInNestedClassesWithAttributesShouldWork#CarFeature.Mappers.CarMapper.g.verified.cs
            │   ├── MapperTest.MapperInNestedClassesWithBaseTypeShouldWork#CarFeature.Mappers.CarMapper.g.verified.cs
            │   ├── MapperTest.MapperInNestedClassShouldWork#CarFeature.Mappers.CarMapper.g.verified.cs
            │   ├── MapperTest.SameMapperNameInMultipleNamespacesShouldWork#FooBarMapper1.g.verified.cs
            │   ├── MapperTest.SameMapperNameInMultipleNamespacesShouldWork#FooBarMapper.g.verified.cs
            │   ├── MemoryTest.ReadOnlyMemoryToList#Mapper.g.verified.cs
            │   ├── MemoryTest.ReadOnlyMemoryToStack#Mapper.g.verified.cs
            │   ├── NullableTest.NullableToNonNullableWithNoThrowNoAccessibleCtorShouldDiagnostic#Mapper.g.verified.cs
            │   ├── NullableTest.NullableToNonNullableWithNoThrowNoAccessibleCtorShouldDiagnostic.verified.txt
            │   ├── NullableTest.ShouldUpgradeArrayElementNullabilityInDisabledNullableContext#Mapper.g.verified.cs
            │   ├── NullableTest.ShouldUpgradeGenericNullabilityInDisabledNullableContext#Mapper.g.verified.cs
            │   ├── NullableTest.ShouldUpgradeNullabilityInDisabledNullableContext#Mapper.g.verified.cs
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassPrivateCtorShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassPrivateCtorShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassUnmatchedAttributedCtorShouldDiagnosticAndUseAlternative#Mapper.g.verified.cs
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassUnmatchedAttributedCtorShouldDiagnosticAndUseAlternative.verified.txt
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassUnmatchedCtorShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassUnmatchedCtorShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassWithOneMatchingCtorAndUnmatchedSourcePropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyConstructorResolverTest.ClassToClassWithOneMatchingCtorAndUnmatchedSourcePropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyNullablePathNoParameterlessCtorShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyNullablePathNoParameterlessCtorShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertySourcePropertyNotFoundShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertySourcePropertyNotFoundShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyTargetPropertyNotFoundShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyTargetPropertyNotFoundShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyTargetPropertyPathWriteOnlyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyFlatteningTest.ManualUnflattenedPropertyTargetPropertyPathWriteOnlyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithConfigurationNotFoundSourcePropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithConfigurationNotFoundSourcePropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithMultipleConfigurationsShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithMultipleConfigurationsShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithPathConfigurationsShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyInitPropertyTest.InitOnlyPropertyWithPathConfigurationsShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyInitPropertyTest.RequiredPropertySourceNotFoundShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyInitPropertyTest.RequiredPropertySourceNotFoundShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyNullableTest.NullableIntWithAdditionalFlattenedValueToNonNullableIntProperties#Mapper.g.verified.cs
            │   ├── ObjectPropertyNullableTest.NullableIntWithAdditionalFlattenedValueToNonNullableIntProperties.verified.txt
            │   ├── ObjectPropertyNullableTest.NullableToNullablePropertyWithAnotherNullableToNonNullableMappingShouldDirectAssign#Mapper.g.verified.cs
            │   ├── ObjectPropertyNullableTest.ShouldUpgradeNullabilityInDisabledNullableContextInArrayProperty#Mapper.g.verified.cs
            │   ├── ObjectPropertyNullableTest.ShouldUpgradeNullabilityInDisabledNullableContextInGenericProperty#Mapper.g.verified.cs
            │   ├── ObjectPropertyNullableTest.ShouldUpgradeNullabilityInDisabledNullableContextInNestedProperty#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.ShouldIgnoreReadOnlyPropertyOnTargetWithDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.ShouldIgnoreReadOnlyPropertyOnTargetWithDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.ShouldIgnoreWriteOnlyPropertyOnSourceWithDiagnostics#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.ShouldIgnoreWriteOnlyPropertyOnSourceWithDiagnostics.verified.txt
            │   ├── ObjectPropertyTest.WithManualMappedNotFoundSourcePropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithManualMappedNotFoundSourcePropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithManualMappedNotFoundTargetPropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithManualMappedNotFoundTargetPropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithManualNotFoundSourcePropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithManualNotFoundSourcePropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithManualNotFoundTargetPropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPrivateSourceGetterShouldIgnoreAndDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPrivateSourceGetterShouldIgnoreAndDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithPrivateSourcePathGetterShouldIgnoreAndDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPrivateSourcePathGetterShouldIgnoreAndDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithPrivateTargetPathGetterShouldIgnoreAndDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPrivateTargetPathGetterShouldIgnoreAndDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithPrivateTargetSetterShouldIgnoreAndDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPrivateTargetSetterShouldIgnoreAndDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithPropertyNameMappingStrategyCaseSensitive#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithPropertyNameMappingStrategyCaseSensitive.verified.txt
            │   ├── ObjectPropertyTest.WithUnmappablePropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithUnmappablePropertyShouldDiagnostic.verified.txt
            │   ├── ObjectPropertyTest.WithUnmatchedPropertyShouldDiagnostic#Mapper.g.verified.cs
            │   ├── ObjectPropertyTest.WithUnmatchedPropertyShouldDiagnostic.verified.txt
            │   ├── ObjectVisibilityTest.PrivateInTheSameClassShouldMap#A.Mapper.g.verified.cs
            │   ├── ObjectVisibilityTest.PropertyInTheSameClassShouldIgnoreBackingField#A.Mapper.g.verified.cs
            │   ├── QueryableProjectionDerivedTypeTest.AbstractBaseClassDerivedTypesShouldWork#Mapper.g.verified.cs
            │   ├── QueryableProjectionEnumerableTest.ArrayToArrayExplicitCast#Mapper.g.verified.cs
            │   ├── QueryableProjectionEnumerableTest.ExplicitCast#Mapper.g.verified.cs
            │   ├── QueryableProjectionEnumTest.EnumFromString#Mapper.g.verified.cs
            │   ├── QueryableProjectionEnumTest.EnumToAnotherEnum#Mapper.g.verified.cs
            │   ├── QueryableProjectionEnumTest.EnumToString#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourceAndTargetProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourceAndTargetPropertyWithNoNullAssignmentAndThrowShouldBeIgnored#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourceAndTargetValueTypeProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourcePathAutoFlatten#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourcePathAutoFlattenString#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourcePathManuallyFlatten#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourceProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableSourceValueTypeProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableTargetProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionNullableTest.ClassToClassNullableTargetValueTypeProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ClassToClass#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ClassToClassMultipleProperties#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ClassToClassNested#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ClassToClassWithConfigs#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ClassToClassWithUserImplemented#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.CtorShouldSkipUnmatchedOptionalParameters#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.QueryablePropertyWithStringFormat#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.RecordToRecordManualFlatteningInsideList#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.RecordToRecordManualListMapping#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ReferenceLoopCtor#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ReferenceLoopCtor.verified.txt
            │   ├── QueryableProjectionTest.ReferenceLoopInitProperty#Mapper.g.verified.cs
            │   ├── QueryableProjectionTest.ReferenceLoopInitProperty.verified.txt
            │   ├── ReferenceHandlingTest.ArrayShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.CustomHandlerAtIndex0ShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.CustomHandlerAtIndex1WithExistingInstanceShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.CustomHandlerShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.CustomHandlerWithExistingInstanceShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.CustomHandlerWithObjectFactoryShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.EnumerableShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.ExistingInstanceShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.ManuallyMappedPropertiesShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.ManuallyMappedPropertiesShouldWork.verified.txt
            │   ├── ReferenceHandlingTest.ObjectFactoryShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.RuntimeTargetTypeShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.RuntimeTargetTypeWithReferenceHandlingShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.ShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.UserImplementedWithoutReferenceHandlerShouldWork#Mapper.g.verified.cs
            │   ├── ReferenceHandlingTest.UserImplementedWithReferenceHandlerShouldWork#Mapper.g.verified.cs
            │   ├── RuntimeTargetTypeMappingTest.WithNullableObjectSourceAndTargetTypeShouldIncludeNullables#Mapper.g.verified.cs
            │   ├── RuntimeTargetTypeMappingTest.WithReferenceHandlerParameter#Mapper.g.verified.cs
            │   ├── RuntimeTargetTypeMappingTest.WithReferenceHandlingEnabled#Mapper.g.verified.cs
            │   ├── SpanTest.SpanToICollection#Mapper.g.verified.cs
            │   ├── SpanTest.SpanToIList#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.AssemblyDefaultShouldWork#MyMapper.g.verified.cs
            │   ├── UnsafeAccessorTest.AttributeShouldOverrideAssemblyDefault#MyMapper.g.verified.cs
            │   ├── UnsafeAccessorTest.GeneratedMethodShouldNotHaveConflictingName#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.MapperInNestedClassShouldWork#CarFeature.Mappers.CarMapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateExistingTargetEnumerableProperty#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateExistingTargetProperty#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateField#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateNestedNullableProperty#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateNestedNullablePropertyShouldInitialize#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateNestedProperty#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.PrivateProperty#Mapper.g.verified.cs
            │   ├── UnsafeAccessorTest.ProtectedProperty#Mapper.g.verified.cs
            │   ├── UseMapperTest.ReferenceHandlingEnabledNoParameter#Mapper.g.verified.cs
            │   ├── UseMapperTest.ReferenceHandling#Mapper.g.verified.cs
            │   ├── UserMethodTest.ExistingTargetsWithClassBaseTypeShouldWork#BaseMapper.g.verified.cs
            │   ├── UserMethodTest.ExistingTargetsWithClassBaseTypeShouldWork#MyMapper.g.verified.cs
            │   ├── UserMethodTest.InstanceMapperShouldSupportUserDefinedStaticMethods#MyMapper.g.verified.cs
            │   ├── UserMethodTest.InstanceMapperShouldUseStaticExistingTargetMethod#Mapper.g.verified.cs
            │   ├── UserMethodTest.WithClassBaseTypeShouldWork#BaseMapper.g.verified.cs
            │   ├── UserMethodTest.WithClassBaseTypeShouldWork#MyMapper.g.verified.cs
            │   ├── UserMethodTest.WithExistingInstanceDisabledNullable#Mapper.g.verified.cs
            │   ├── UserMethodTest.WithMapperClassModifiersShouldCopyModifiersToMapper#BaseMapper.g.verified.cs
            │   ├── UserMethodTest.WithMethodClassModifiersShouldCopyModifiersToMethod#BaseMapper2.g.verified.cs
            │   ├── UserMethodTest.WithMethodClassModifiersShouldCopyModifiersToMethod#BaseMapper3.g.verified.cs
            │   ├── UserMethodTest.WithMethodClassModifiersShouldCopyModifiersToMethod#BaseMapper.g.verified.cs
            │   ├── UserMethodTest.WithNamespaceShouldWork#Mapper.g.verified.cs
            │   ├── UseStaticMapperTest.ReferenceHandlingEnabledNoParameter#Mapper.g.verified.cs
            │   ├── UseStaticMapperTest.ReferenceHandling#Mapper.g.verified.cs
            │   ├── ValueTupleTest.MapPropertyShouldMapFieldAndNestedTuple#Mapper.g.verified.cs
            │   ├── ValueTupleTest.MapPropertyShouldMapNamedNestedTuple#Mapper.g.verified.cs
            │   ├── ValueTupleTest.MapPropertyShouldMapNestedTuple#Mapper.g.verified.cs
            │   ├── ValueTupleTest.MapPropertyShouldMapToTupleField#Mapper.g.verified.cs
            │   ├── ValueTupleTest.SimilarTupleMappingShouldCreateSeparateMethods#Mapper.g.verified.cs
            │   └── ValueTupleTest.TuplePropertyToTupleProperty#Mapper.g.verified.cs
            ├── StringSyntax.cs
            ├── TestAssembly.cs
            ├── TestHelper.cs
            ├── TestHelperOptions.cs
            ├── TestSourceBuilder.cs
            └── TestSourceBuilderOptions.cs

69 directories, 748 files

标签:

实例下载地址

Riok.Mapperly:.NET 对象映射源码生成器,无需运行时反射

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警