update related read mvc framework example data and entity-framework model entity viewmodel datamodel

entity framework - related - ¿Cuál es la diferencia entre un modelo y una entidad?



get related data entity framework (3)

Estoy confundido para entender cuál es el significado de estas palabras:

Entity , Model , DataModel , ViewModel

¿Puede algún cuerpo ayudarme a entenderlos por favor? Gracias a todos.


En primer lugar, para saber sobre la Entidad debe conocer la Clase. Todos ellos representan los mismos campos pero la terminología cambia según la declaración.

Consideremos una tabla de cualquier base de datos [SQL, ORACLE, Informix, Cassandra ...] como ejemplo.

CLASE:

En general, una tabla es considerada como una clase hasta que se agrega a edmx o dbmx.

//Student class public class Student() { //Properties public int StudentNumber; public string StudentName; }

ENTIDAD:

  • Después de arrastrar y soltar / agregar la tabla a dbmx / edmx, se denomina Entidad.

  • Cada entidad se genera a partir de su clase correspondiente y podemos agregar atributos a la entidad que se utilizan para realizar operaciones usando
    linq o entidad.

MODELO DE DATOS:

  • Contiene todos los campos en la tabla.

  • DATAMODEL es una referencia de clase directa a su cshtml o controlador donde puede acceder a los atributos para realizar operaciones CRUD.

VIEWMODEL:

  • Algunas situaciones ocurren cuando necesitamos realizar operaciones CRUD en más de un modelo (tabla).
  • Así que combinamos todos nuestros modelos requeridos en una clase y los definimos en su constructor.

Ejemplo: Asumamos

//Student class public class Student() { //Properties public int StudentNumber; public string StudentName; } //Marks Class Public class Marks() { public int Maths; public int Physics; public int Chemistry; //Now sometimes situations occur where we have to use one datamodel inside //other datamodel. public Student StudentModel; }


Espero no haberme perdido tu punto aquí, king.net ...

De todos modos, suponiendo que esté hablando de modelado de entidad o modelado de relación de entidad (ERD):

  • una entidad representa cualquier entidad del mundo real - por ejemplo, estudiante, curso,
  • una entidad tendrá atributos; por ejemplo, el alumno tiene su primer nombre, apellido, fecha de nacimiento
  • una entidad tendrá relaciones, por ejemplo, el curso "está inscrito en el curso" (donde el estudiante y el curso son entidades con atributos y "está inscrito en" es la relación.
  • la relación puede ser "uno a uno", "uno a muchos" o "muchos a muchos", por ejemplo, un estudiante "está inscrito en" muchos cursos y, de manera similar, un curso "tiene" muchos estudiantes.
  • las relaciones también tienen cardinalidad

Agregar relaciones entre entidades crea un "modelo de datos". Ha modelado algún sistema del mundo real y las entidades / objetos internos en ese sistema. El siguiente paso es normalizarlo para garantizar que cumpla con la "forma normal".

En términos de ERD, puede tener modelos "lógicos" y "físicos". El modelo lógico describe el modelo de datos en términos simples de alto nivel que retienen los detalles técnicos necesarios para implementarlo. Representa la descripción general de la solución del sistema. El modelo físico incluye los detalles técnicos necesarios para implementar realmente el sistema (como "tablas de unión de muchos a muchos" necesarias para implementar relaciones de "varios a muchos").

Aquí hay algunos tutoriales en línea (aunque estoy seguro de que debe haber miles):

No estoy muy seguro de lo que quiere decir con "modelo" y "ver modelo" en un contexto relacionado. No estoy seguro de si puede estar confundiendo esto con el paradigma Model-View-Controller (MVC). Aquí, un modelo es un componente de datos y la vista representa un observador de esos datos (como un componente de UI de tabla o gráfico). Hay muchos en línea que explican "controlador de vista de modelo" o "MVC".

Espero que esto ayude, Wayne


La definición de estos términos es bastante ambigua. Encontrarás diferentes definiciones en diferentes lugares.

Entidad : una entidad representa una instancia única de su objeto de dominio guardado en la base de datos como un registro. Tiene algunos atributos que representamos como columnas en nuestras tablas.

Modelo : un modelo típicamente representa un objeto del mundo real que está relacionado con el problema o el espacio del dominio. En la programación, creamos clases para representar objetos. Estas clases, conocidas como modelos, tienen algunas propiedades y métodos (que definen el comportamiento de los objetos).

ViewModel : el término ViewModel se origina del patrón de diseño MVVM (Model View ViewModel). Hay instancias en las que los datos que debe representar la vista provienen de dos objetos diferentes. En tales escenarios, creamos una clase de modelo que consta de todas las propiedades requeridas por la vista. No es un modelo de dominio sino un ViewModel porque lo usa una vista específica. Además, no representa un objeto del mundo real.

DataModel : para resolver un problema, los objetos interactúan entre sí. Algunos objetos comparten una relación entre ellos y, en consecuencia, forman un modelo de datos que representa los objetos y la relación entre ellos.

En una aplicación que gestiona pedidos de clientes, por ejemplo, si tenemos un objeto de cliente y pedido, estos objetos comparten una relación de muchos a muchos entre ellos. El modelo de datos depende eventualmente de la forma en que nuestros objetos interactúan entre sí. En una base de datos, vemos el modelo de datos como una red de tablas que hacen referencia a algunas otras tablas.

Para saber más sobre las relaciones de objeto, visite: Conceptos básicos de las relaciones entre objetos

Para obtener más detalles, visite: Entity vs Model vs ViewModel vs DataModel