Ho letto su AutoMapper a causa di una risposta a una delle mie precedenti domande here.
Si dice che AutoMapper appiattisce i modelli di domini complessi, ma ho bisogno di qualcosa che faccia il contrario. Ho bisogno di collegare i miei modelli di visualizzazione (modelli di dominio appiattiti) ai modelli di dominio complessi in modo da poter trasformare rapidamente un modello di vista in un modello di dominio.
C'è qualcosa di simile a AutoMapper che acquisisce un modello di vista e lo trasforma in un modello di dominio complesso?AutoMapper appiattisce i modelli di dominio ma fa l'opposto? Se no, cosa fa?
9
A
risposta
1
Non proprio, perché sarebbe estremamente convenzionale essere utile. È facile distinguere i pattern quando si appiattisce, ma l'altro modo è "rotondo ... troppa logica personalizzata".
4
Lo fai !. Crei un metodo MapToModel in cui esegui la codifica della mano destra/mano sinistra e sincronizzi i due insieme.
public MyModel MapToModel(MyViewModelForm vmf)
{
//new up MyModel model;
model.foo = vmf.foo;
return model;
}
Se le applicazioni si codificano da sole, cosa faremmo esattamente per vivere ...?
+2
applicazioni che si codificano da sole :) – Omu
2
il ValueInjecter lo fa, ed è abbastanza facile da usare:
//flatenning
personDto.InjectFrom<FlatValueInjection>(person);
//unflattening
person.InjectFrom<UnflatValueInjection>(personDto);
e
//this is just mapping without flattening/unflattening
foo.InjectFrom(bar)
Problemi correlati
- 1. Che cosa fa removeOnCompletion = NO no?
- 2. Cosa fa document.domain = document.domain?
- 3. Cosa fa?
- 4. Cosa fa [:]?
- 5. Cosa fa NSRunLoop?
- 6. Cosa fa @Transactional?
- 7. Cosa fa? ... : ... fare?
- 8. Cosa fa l'operatore | = fa in JavaScript?
- 9. Che cosa fa MaxDegreeOfParallelism?
- 10. Cosa fa effettivamente "__COMPAT_LAYER"?
- 11. Cosa fa -webkit-text-size-adjust fa?
- 12. Cosa fa "12345" + 2 fa in C?
- 13. Cosa fa mysqli_store_result() Effettivamente?
- 14. Cosa fa rb-fsevent?
- 15. Cosa fa effettivamente addChildViewController?
- 16. Cosa fa addActionListener?
- 17. Che cosa fa @sign?
- 18. cosa fa l'istruzione movsbl?
- 19. HttpWebRequest.UserAgent: cosa fa
- 20. Cosa fa ModelState.IsValid?
- 21. Cosa fa .pack()?
- 22. Cosa fa @NSManaged?
- 23. Tensorflow: cosa fa tf.nn.separable_conv2d?
- 24. Cosa fa aspnet_regiis.exe
- 25. Cosa fa git rev-parse?
- 26. Che cosa fa webform_DoPostBackWithOptions()?
- 27. Cosa fa effettivamente Process.Dispose()?
- 28. Cosa fa scanner.close()?
- 29. Cosa fa ConnectionRefused?
- 30. Cosa fa cmake .. do?
si può fare con la ValueInjecter http://valueinjecter.codeplex.com/ – Omu