를 사용
이것은 당신이 decimal
에 decimal
의 매핑을 구성하는 방법을 보여주는 완벽한 MCVE입니다. 이 예에서는 내가이 개 자리에있는 모든 소수 값을 반올림 :
public class FooProfile : Profile
{
public FooProfile()
{
CreateMap<decimal, decimal>().ConvertUsing(x=> Math.Round(x,2));
CreateMap<Foo, Foo>();
}
}
public class Foo
{
public decimal X { get; set; }
}
을 여기에, 우리는 그것을 보여줍니다
class Program
{
static void Main(string[] args)
{
Mapper.Initialize(x=> x.AddProfile(new FooProfile()));
var foo = new Foo() { X = 1234.4567M };
var foo2 = Mapper.Map<Foo>(foo);
Debug.WriteLine(foo2.X);
}
}
예상 출력 :
1234.46
동안을 그 Automapper가 decimal
을에 매핑하는 방법을 알고 있음을 기본으로 사용하여 기본 구성을 무시하고 필요에 맞게 매핑하는 방법을 알려줄 수 있습니다.
출처
2017-12-19 15:31:11
Amy
https://stackoverflow.com/questions/30137734/whats-the-alternative-to-ivalueformatter-in-automapper – Amy
해당 솔루션의 문제점은 제가 모든 소수 유형 인스턴스를 찾아야한다는 것입니다. 나는 속성에 의해서가 아니라 십진법으로 이것을하고 싶다. –
10 진수에서 10 진수로 맵을 작성하고 해당 포맷터를 적용하십시오. 당신은 어디에서나 그것을 할 필요가 없습니다. automapper에게 십진수를 십진수로 매핑하는 방법을 알려주십시오. – Amy