J'avais l'impression qu'ils sont tous fondamentalement les mêmes. Les objets du modèle sont-ils également les mêmes?
En ce moment, dans mon architecture, j'ai:
class Person
{
public string PersonId;
public string Name;
public string Email;
public static bool IsValidName() { //logic here}
public static bool IsValidEmail() { //logic here }
}
class PersonService
{
private PersonRepository pRepository;
PersonService()
{
pRepository = new PersonRepository();
}
public bool IsExistingEmail(string email)
{
//calls repo method to see if email is in db
}
public Person GetPerson(email)
{
return pRepository.Get(email);
}
public void SavePerson(Person p)
{
if (Person.IsValidEmail(p.Email) && !IsExistingEmail(p.Email)
{
pRepository.Save(p);
}
}
}
class PersonRepository
{
public void Save(Person p)
{
//save to db
}
public Person Get(string email)
{
//get from db
}
public bool IsExistingEmail(string email)
{
//see if email in db
}
}
Alors, lesquelles des classes ci-dessus sont POCO, objet de domaine, objet de modèle, entité?