James Walsh Jr
Как правило, объект домена определяет бизнес-объект, а также его свойства и методы. Он используется для манипулирования и перемещения данных в системе обработки. Объект Entity существует для того, чтобы взять эти свойства домена и сопоставить их с постоянным объектом хранения, таким как таблица базы данных.
С помощью инструмента сопоставления, такого как AutoMapper, можно выполнить сопоставление объекта домена объекту сущности, или при желании можно закодировать его отдельно.
В приведенном ниже примере постоянным хранилищем является таблица базы данных BookInformation, содержащая столбцы BookId, Book_Title и Book_ISBN.
Этот объект сущности определен в классе BookEntity.
Класс доменных объектов Book определяется с помощью 3 свойств: BookID, который является GUID, генерируемым базой данных, BookName и ISBN.
// Domain object
public class Book
(
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid BookId {get;set;}
public string BookName {get;set;}
public string ISBN {get;set;}
)
// Entity Object
[Table("BookInformation")]
public class BookEntity
(
[Key]
[Column("BookId")]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid BookId {get;set;}
[Column("Book_Title")]
public string BookName {get;set;}
[Column("Book_ISBN")]
public string ISBN {get;set;}
)