-1
我在使用數據映射器模式的數據訪問層上工作。我的實際代碼結構是,例如:在數據訪問層映射數據庫的設計模式[C#]
public class Person {
public int Age
public string FirstName
public string LastName
public List<Address> Addresses
...
}
public class PersonMapper {
public Person GetPersonById(int id)
public List<Person> GetAll()
public bool UpdatePerson(Person person)
...
}
我有這麼多的類對應的數據庫表具有相同的名稱。
我的問題是:
是我的做法對嗎?當我映射所有表格時,我將在域圖層中使用它。
在Mapper類中,我使用的方法只適用於與這些類名稱相同的表。 (
Person
類 - >人數據庫表,Order
類 - >訂單數據庫表等)但是,從數據庫映射高級選擇的最佳方式是什麼,它將包含連接到更多的表。例如,我想要選擇Person
與他所有的Orders.
我是否應該爲Person創建域模型,該模型將包含屬性List<Orders>
並使用PersonMapper
和下一個OrderMapper
?
我不知道爲什麼它被稱爲映射器。對我個人而言,它是一個存儲庫。如果可以的話,我會使用實體框架爲我做所有這些。 –
EF我無法使用...爲什麼要存儲庫? –
@DenisStephanov:在'DataAccessLayer'世界中,你的'PersonMapper'類通常被稱爲'PersonRepository'。 「Mapper」這個詞在'DAL'中有不同的含義。 –