/// <summary>
 /// Inizializza i parametri del domain Object
 /// </summary>
 /// <param name="person">Oggetto LitePerson corrente, che identifica il creatore.</param>
 /// <param name="IpAddress">Indirizzo IP dell'utente corrente</param>
 /// <param name="ProxyIpAddress">Indirizzo IP del proxy dell'utente corrente</param>
 /// <param name="date"></param>
 /// <remarks>
 /// Utilizzare sempre questa funzione prima del salvataggio in fase di creazione dell'oggetto
 /// </remarks>
 public virtual void CreateMetaInfo(litePerson person, String IpAddress, String ProxyIpAddress, DateTime?date = null)
 {
     CreatedBy             = person;
     CreatedOn             = (date.HasValue)? date:DateTime.Now;
     CreatorIpAddress      = IpAddress;
     CreatorProxyIpAddress = ProxyIpAddress;
     UpdateMetaInfo(person, BaseStatusDeleted.None);
 }
 /// <summary>
 /// Inizializza i parametri standard
 /// </summary>
 /// <param name="person">Oggetto LitePerson corrente, che identifica il creatore.</param>
 public virtual void CreateMetaInfo(litePerson person)
 {
     CreatedBy = person;
     CreatedOn = DateTime.Now;
     UpdateMetaInfo(person, BaseStatusDeleted.None);
 }
 /// <summary>
 /// Aggiorna i dati per il recupero di un oggetto con cancellazione logica.
 /// </summary>
 /// <param name="person">Utente che effettua la modifica</param>
 /// <param name="IpAddress">Indirizzo IP dell'utente corrente</param>
 /// <param name="ProxyIpAddress">Indirizzo IP del Proxy dell'utente corrente</param>
 /// <param name="date">Data cancellazione</param>
 public virtual void RecoverMetaInfo(litePerson person, String IpAddress, String ProxyIpAddress, DateTime?date = null)
 {
     ModifiedIpAddress      = IpAddress;
     ModifiedProxyIpAddress = ProxyIpAddress;
     UpdateMetaInfo(person, BaseStatusDeleted.None, date);
 }
 /// <summary>
 /// Aggiorna i parametri per la modifica
 /// </summary>
 /// <param name="user">Utente che effettua la modifica</param>
 /// <param name="IpAddress">Indirizzo IP dell'utente corrente</param>
 /// <param name="ProxyIpAddress">Indirizzo IP del Proxy dell'utente corrente</param>
 /// <param name="date">Data modifica (da usare quando diversa da quella corrente)</param>
 public virtual void UpdateMetaInfo(litePerson user, string IpAddress, string ProxyIpAddress, DateTime date)
 {
     UpdateMetaInfo(user, date);
     ModifiedIpAddress      = IpAddress;
     ModifiedProxyIpAddress = ProxyIpAddress;
 }
 /// <summary>
 /// Aggiorna i parametri per la modifica
 /// </summary>
 /// <param name="user">Utente corrente che effettua la modifica</param>
 /// <param name="delete">Stato cancellazione (vedi enum)</param>
 /// <param name="date">Data modifica</param>
 public virtual void UpdateMetaInfo(litePerson user, BaseStatusDeleted delete, DateTime?date = null)
 {
     UpdateMetaInfo(user);
     Deleted = delete;
 }
 /// <summary>
 /// Aggiorna i parametri per la modifica
 /// </summary>
 /// <param name="user">Utente corrente che effettua la modifica</param>
 /// <param name="date">Data ultima modifica</param>
 public virtual void UpdateMetaInfo(litePerson user, DateTime?date = null)
 {
     ModifiedBy = user;
     ModifiedOn = (date.HasValue) ? date.Value : DateTime.Now;
 }