/// <summary>
 /// Copies the properties from another PageViewSession object to this PageViewSession object
 /// </summary>
 /// <param name="target">The target.</param>
 /// <param name="source">The source.</param>
 public static void CopyPropertiesFrom(this PageViewSession target, PageViewSession source)
 {
     target.Id                  = source.Id;
     target.ForeignGuid         = source.ForeignGuid;
     target.ForeignKey          = source.ForeignKey;
     target.IpAddress           = source.IpAddress;
     target.PageViewUserAgentId = source.PageViewUserAgentId;
     target.SessionId           = source.SessionId;
     target.Guid                = source.Guid;
     target.ForeignId           = source.ForeignId;
 }
 /// <summary>
 /// Clones this PageViewSession object to a new PageViewSession object
 /// </summary>
 /// <param name="source">The source.</param>
 /// <param name="deepCopy">if set to <c>true</c> a deep copy is made. If false, only the basic entity properties are copied.</param>
 /// <returns></returns>
 public static PageViewSession Clone(this PageViewSession source, bool deepCopy)
 {
     if (deepCopy)
     {
         return(source.Clone() as PageViewSession);
     }
     else
     {
         var target = new PageViewSession();
         target.CopyPropertiesFrom(source);
         return(target);
     }
 }