/// <summary>
 /// Adds the album's details to the database
 /// </summary>
 /// <param name="publicAlbum">PublicAlbum object being added to the database</param>
 /// <returns>New unique identifier for the PublicAlbum, generated by the database</returns>
 public static Int16 AddPublicAlbum(Business.PublicAlbum publicAlbum)
 {
     try
     {
         return((Int16)Control.ExecuteScalar("AddPublicAlbum", publicAlbum.GetParametersForStoredProcedure(false)));
     }
     catch (System.Exception e)
     {
         throw new Exception.AddDbObjectException("Could not add public album", e);
     }
 }
 /// <summary>
 /// Updates the album's details in the database
 /// </summary>
 /// <param name="publicAlbum">PublicAlbum object being updated in the database</param>
 public static void UpdatePublicAlbum(Business.PublicAlbum publicAlbum)
 {
     try
     {
         Control.ExecuteNonQuery("UpdatePublicAlbum", publicAlbum.GetParametersForStoredProcedure(true));
     }
     catch (System.Exception e)
     {
         throw new Exception.UpdateDbObjectException("Could not update public album", e);
     }
 }
        /// <summary>
        /// Creates a new Business.PublicAlbum object from the data in the DataTableReader
        /// </summary>
        /// <param name="dtr">DataTableReader containing the PublicAlbum's data</param>
        /// <returns>Business.PublicAlbum object</returns>
        private static Business.PublicAlbum GetPublicAlbumFromDataTableReader(DataTableReader dtr)
        {
            Business.PublicAlbum album = new Business.PublicAlbum();
            album.Id           = (Int16)dtr["Id"];
            album.Name         = (String)dtr["Name"];
            album.Description  = (String)dtr["Description"];
            album.Images       = GetPublicImagesByParentId(album.Id);
            album.DateCreated  = (DateTime)dtr["DateCreated"];
            album.IsInDatabase = true;

            return(album);
        }