Una de nuestras aplicaciones heredadas se ejecuta en VB.net (nivel 3) y DataTable se utiliza como DTO. Pero queremos convertir la aplicación usando WPF, arquitectura MVVM. ¿Puedo implementar MVVM usando Datatable como DTO o tengo que crear clases para representar estas tablas de datos e implementar la arquitectura MVVM? ?MVVM usando DataTable?
Respuesta
No hay nada en MVVM que impida el uso de un DataTable/DataSet como modelo. La 'M' en MVVM puede ser cualquier cosa realmente. Es el V y el VM los que están más claramente definidos. Simplemente haga que su ViewModel actúe como intermediario para su View y el DataRow subyacente. No debería ser más complicado que si tu modelo se generara clases de servicio web.
Mire las diferencias entre usar un modelo anémico vs. rico en MVVM. En el modelo anémico; que es lo que obtienes con una tabla de datos, implementa propiedades y conecta todos los eventos de INotify en tu VM. Si utiliza la ruta del modelo enriquecido, como construir sus propios objetos comerciales o utilizar un marco como CSLA, obtendrá mucha más acción de su modelo y su máquina virtual será mucho más pequeña/sencilla.
- 1. DataTable a JSON usando jQuery
- 2. Andamios para WPF usando MVVM?
- 3. ¿Implementando su propio MVVM vs. usando un marco MVVM?
- 4. Encuadernación WPF DataGrid a DataTable usando TemplateColumns
- 5. Devolver DataTable usando async .net 4.0
- 6. WPF ReadOnly Propiedades de dependencia usando MVVM
- 7. Elementos seleccionados usando MVVM en WinRT
- 8. propiedades dependientes de actualización usando el MVVM
- 9. Silverlight Navigation usando Mvvm-light (oobe) + MEF?
- 10. WPF y MVVM: ¿Algún ejemplo usando VB.Net?
- 11. WPF usando MVVM: DataBinding con RelativeSource
- 12. Animaciones de vista dinámica usando MVVM
- 13. Visualización de entidades en TreeView usando MVVM
- 14. WPF Agrupación con una colección usando MVVM
- 15. Cómo agregar un DataTable a otro DataTable
- 16. Casting datatable genérico a datatable type
- 17. MVVM Foundation vs MVVM Toolkit
- 18. Cómo vincular una propiedad a un cuadro de texto usando MVVM y MVVM toolkit?
- 19. DataTable Union
- 20. ¿Cómo convertir datatable a json string usando json.net?
- 21. Cómo mostrar los datos en dirección horizontal usando JSF dataTable
- 22. C#: Recuperando el valor de DataTable usando PrimaryKey
- 23. ¿Lista <object[]> usando más memoria que DataTable?
- 24. DataTemplate + MVVM
- 25. MVVM: comunicación
- 26. jsf repeat inside datatable
- 27. Usando Microsoft (u otra) cinta con proyecto grande y MVVM
- 28. Cómo abrir una nueva ventana usando MVVM Light Toolkit
- 29. ¿Cómo cancelar una edición de un objeto usando MVVM?
- 30. ¿Cómo detectar Pivot View usando MVVM en WP7?
k, thnx. En Class podemos implementar INotifyPropertychanged e incluso podemos escribir los call backs, coercing, etc. Pero en Datatable o en DataRow, ¿cómo podemos identificar la notificación de cambio? Eso es lo que me forzó a hacer esta pregunta –
DataTable tiene un evento RowChanged que puede usar. Pero probablemente no necesites usarlo. ViewModel puede generar eventos PropertyChanged según sea necesario. El DataRow no debe cambiar demasiado debajo del ViewModel si ViewModel controla los datos que entran y salen del DataRow. – Josh