문제
"ID"로 끝나는 소스 멤버가 ID없이 대상 멤버에 매핑되도록 회원 이름 매핑 컨벤션을 설정하려고 시도했습니다. 예를 들어
userId-> 사용자
이것을 어떻게합니까? SourcememberNametransformer를 성공하지 못한 채 사용하려고했습니다. 또한 alkenizepostfixes ()를 사용해 보았습니다.
this.SourceMemberNameTransformer = s =>
{
return s.Replace("Id", string.Empty);
};
해결책 2
지금부터 이것은 설정할 때 작동하지 않는 것 같습니다. Profile
. 어느 것도 아니다 SourceMemberNameTransformer
또는 RecognizePostfix
에서 작동 Profile
. 그러나 Automapper Global 구성에 지정되어 있습니다. 잘 작동합니다.
다른 팁
"keanceepostfixes"메소드를 사용할 수도 있습니다.
this.RecognizePostfixes("Id");
내장 변압기는 향후 참조를위한 것입니다.
s => Regex.Replace(s, "(?:^Get)?(.*)", "$1");
이것은 작동해야합니다.
this.SourceMemberNameTransformer = s => { if (s.EndsWith("Id")) return s.Substring(0, s.Length - 2); return s; };
당신은 또한 그것을 달성 할 수 있습니다 DestinationMemberNamingConvention
그리고 Regex.
제휴하지 않습니다 StackOverflow