diff --git a/src/Mapster/Adapters/ClassAdapter.cs b/src/Mapster/Adapters/ClassAdapter.cs index d1c1febe..d7547139 100644 --- a/src/Mapster/Adapters/ClassAdapter.cs +++ b/src/Mapster/Adapters/ClassAdapter.cs @@ -209,6 +209,14 @@ protected override Expression CreateBlockExpression(Expression source, Expressio { value = member.Getter.NotNullReturn(value); } + + var destinationPropertyInfo = (PropertyInfo)member.DestinationMember.Info!; + if (destinationPropertyInfo.IsInitOnly()) + { + //Todo build expression here instead of binding value + // arg.DestinationType.GetProperty(destinationPropertyInfo.Name).SetValue(); + } + var bind = Expression.Bind((MemberInfo)member.DestinationMember.Info!, value); lines.Add(bind); }