Stavo guardando un codice su GitHub pubblicato da Jimmy Bogard:
namespace After.Model
{
public abstract class Entity : IComparable<Entity>
{
public const string ID = "Id";
public Guid Id { get; protected set; }
public int CompareTo(Entity other)
{
if (IsPersistent())
{
return Id.CompareTo(other.Id);
}
return 0;
}
public override bool Equals(object obj)
{
if (IsPersistent())
{
var Entity = obj as Entity;
return (Entity != null) && (Id == Entity.Id);
}
return base.Equals(obj);
}
public override int GetHashCode()
{
return IsPersistent() ? Id.GetHashCode() : base.GetHashCode();
}
private bool IsPersistent()
{
return (Id != Guid.Empty);
}
}
}
Non ci sono applicazioni client per questo codice. C'è un'app per il test delle unità. Pertanto puoi testare il codice per assicurarti che faccia ciò che è supposto.
Lo chiamerei semplicemente modello di dominio in isolamento. Tuttavia, ho vagato se ci fosse un termine più specifico. Il motivo per cui lo chiedo è perché devo fare riferimento ad esso in un rapporto.