필자는 이전 질문 중 하나 인 here에 대한 응답으로 AutoMapper를 읽었습니다.
AutoMapper는 복잡한 도메인 모델을 평평하게 만든다고 말합니다. 그러나 나는 그 반대의 것을 필요로합니다. 뷰 모델을 도메인 모델로 신속하게 변환 할 수 있도록 복잡한 뷰 모델 (플랫 도메인 모델)을 복잡한 도메인 모델에 연결해야합니다.
뷰 모델을 가져 와서 복잡한 도메인 모델로 만드는 AutoMapper와 비슷한 것이 있습니까?AutoMapper는 도메인 모델을 평평하게하지만 반대의 역할을합니까? 그렇지 않다면, 무엇을합니까?
9
A
답변
1
유용하지는 않겠지 만 극도로 일반적이어야하기 때문입니다. 플랫 팅 할 때 패턴을 구분하는 것은 쉽지만 다른 방법은 '라운드 ... 너무 많은 맞춤 로직'입니다.
4
할 수 있습니다!. 오른손/왼손 코딩을 수행하고 두 코드를 함께 동기화하는 MapToModel 메서드를 만듭니다.
public MyModel MapToModel(MyViewModelForm vmf)
{
//new up MyModel model;
model.foo = vmf.foo;
return model;
}
응용 프로그램을 코딩 한 경우 생존을 위해 정확히 무엇을해야합니까?
+2
:) – Omu
2
ValueInjecter 그것을 수행하고, 사용하기 매우 쉽습니다 : 당신이 ValueInjecter 함께 할 수
//flatenning
personDto.InjectFrom<FlatValueInjection>(person);
//unflattening
person.InjectFrom<UnflatValueInjection>(personDto);
및
//this is just mapping without flattening/unflattening
foo.InjectFrom(bar)
관련 문제
- 1. 내 시나리오에는 Drools가 적용 가능합니까? 그렇지 않다면?
- 2. Java : 연결이 거부되었지만 netstat이 그렇지 않다면 말합니다.
- 3. PHP5, MySQL 및 Macbook Pro의 콤보가 램프 스택을 구성합니까? 그렇지 않다면, 무엇을합니까?
- 4. Automapper는 무엇인가요?
- 5. 다른 작업에서 작업을 호출하는 방법은 무엇입니까? (전혀 그렇지 않다면)
- 6. 도메인 모델을 asp.net에서 정의하는 방법
- 7. Exception 클래스로 각 예외를 catch하는 것이 맞습니까? 그렇지 않다면?
- 8. JavaScript는 여러 스레드를 지원합니까? 그렇지 않다면 sleep()을 어떻게 구현해야합니까?
- 9. XSLT : 태그가 있으면 템플릿을 적용합니다. 그렇지 않다면 정적 값을 선택하십시오
- 10. 의미론은 라텍스에서 중요합니까? 그렇지 않다면 왜 안 되겠습니까?
- 11. 파이썬 코드 : Mac OS X에 X 터미널이 있습니까? (그렇지 않다면?)
- 12. 작은 CRM에 Python을 사용해야합니까? 그렇지 않다면 다른 플랫폼이 있습니까?
- 13. 사전 계산 역 정규화가 있습니까? 그렇지 않다면, (단순한 용어로) 무엇입니까?
- 14. 일부 어셈블리를 검사하는 방법을 클라이언트에 등록하고 그렇지 않다면
- 15. Automapper는 일반
- 16. Automapper는 속성 무시를 무시합니다.
- 17. 빈혈 도메인 모델을 다루는 기술
- 18. 어느 레이어가 도메인 모델을 사용해야합니까?
- 19. 데이터 맵퍼가 도메인 모델을 참조해야합니까?
- 20. 도메인 모델을 desigining - 도움이 필요합니다.
- 21. Automapper는 중첩 모델에서 평면 모델로 어떻게 작동합니까?
- 22. IFrame은 top.Location 객체 (도메인 간)와 정확히 어떤 역할을합니까?
- 23. Grails에서 두 모델을 서로 연결하는 도메인 모델을 만들려면 어떻게해야합니까?
- 24. AutoMapper는 ReadOnlyCollections를 지원합니까?
- 25. AutoMapper는 NullReferenceException을 캐치하고 무시합니다.
- 26. 문자열과 그 반대의 객체
- 27. will_paginate와 반대의 페이지 번호
- 28. Fluent NHibernate에서 다음 도메인 모델을 어떻게 매핑합니까?
- 29. WCF 서비스 도메인 모델을 사용한 지연로드?
- 30. Linq2Sql 엔터티 위에 도메인 모델을 적용하십시오.
을 http://valueinjecter.codeplex.com/ – Omu