Пример #1
0
 public SprocketFile SelectSprocketFile(long id, bool getFileData)
 {
     try
     {
         using (TransactionScope scope = new TransactionScope())
         {
             SQLiteConnection connection = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
             SQLiteCommand    cmd        = connection.CreateCommand();
             cmd.Connection  = connection;
             cmd.CommandText = procs["Select SprocketFile"];
             cmd.Parameters.Add(new SQLiteParameter("@SprocketFileID", id));
             cmd.Parameters.Add(new SQLiteParameter("@GetFileData", getFileData));
             SQLiteDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
             SprocketFile     entity;
             if (!reader.Read())
             {
                 entity = null;
             }
             else
             {
                 entity = new SprocketFile(reader);
             }
             reader.Close();
             scope.Complete();
             return(entity);
         }
     }
     finally
     {
         DatabaseManager.DatabaseEngine.ReleaseConnection();
     }
 }
 public Result Delete(SprocketFile sprocketFile)
 {
     Result result = new Result();
     if (OnBeforeDeleteSprocketFile != null)
         OnBeforeDeleteSprocketFile(sprocketFile, result);
     SQLiteConnection conn = null;
     if (result.Succeeded)
     {
         try
         {
             using (TransactionScope scope = new TransactionScope())
             {
                 conn = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
                 SQLiteCommand cmd = new SQLiteCommand(procs["Delete SprocketFile"], conn);
                 cmd.Parameters.Add(new SQLiteParameter("@SprocketFileID", sprocketFile.SprocketFileID));
                 cmd.ExecuteNonQuery();
                 scope.Complete();
             }
         }
         catch (Exception ex)
         {
             return new Result(ex.Message);
         }
         finally
         {
             DatabaseManager.DatabaseEngine.ReleaseConnection();
         }
         if (OnSprocketFileDeleted != null)
             OnSprocketFileDeleted(sprocketFile);
     }
     return result;
 }
Пример #3
0
        public Result ReadAdminField(out IEditFieldData efdata)
        {
            ImageEditFieldData data = new ImageEditFieldData();

            SprocketFile file = null;

            if (HttpContext.Current.Request.Files[fieldName] != null)
            {
                if (HttpContext.Current.Request.Files[fieldName].ContentLength > 0)
                {
                    file = new SprocketFile(SecurityProvider.ClientSpaceID, HttpContext.Current.Request.Files[fieldName], "", "");
                    Image  img;
                    Result r = file.ValidateImageData(out img);
                    if (!r.Succeeded)
                    {
                        efdata = new ImageEditFieldData();
                        return(new Result("The image selected could not be loaded. The system reported back the following error: " + r.Message));
                    }
                    if (maxwidth > 0 || maxheight > 0)
                    {
                        SizingOptions options = new SizingOptions(maxwidth, maxheight, SizingOptions.Display.Constrain, 0);
                        options.Image = img;
                        MemoryStream stream = new MemoryStream();
                        FileManager.FileManager.Instance.ResizeImage(options, stream);
                        file.FileData = stream.ToArray();
                    }
                }
            }

            bool deleted = HttpContext.Current.Request.Form["deleteimage_" + fieldName] != null;
            long existing;

            if (!long.TryParse(HttpContext.Current.Request.Form["existingimage_" + fieldName], out existing))
            {
                existing = 0;
            }

            if (deleted)
            {
                data.SprocketFileID = 0;
            }
            else if (file != null)
            {
                data.SprocketFile = file;
            }
            else
            {
                data.SprocketFileID = existing;
            }
            efdata = data;

            return(new Result());
        }
Пример #4
0
        public Result Store(SprocketFile sprocketFile)
        {
            SQLiteConnection conn = null;

            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    conn = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
                    SQLiteCommand cmd = new SQLiteCommand();
                    cmd.Connection = conn;
                    if (sprocketFile.SprocketFileID == 0)
                    {
                        sprocketFile.SprocketFileID = DatabaseManager.GetUniqueID();
                        cmd.CommandText             = procs["Insert SprocketFile"];
                    }
                    else if (SelectSprocketFile(sprocketFile.SprocketFileID, false) == null)
                    {
                        cmd.CommandText = procs["Insert SprocketFile"];
                    }
                    else
                    {
                        cmd.CommandText = procs["Update SprocketFile"];
                    }
                    cmd.Parameters.Add(NewSqlParameter("@SprocketFileID", sprocketFile.SprocketFileID, DbType.Int64));
                    cmd.Parameters.Add(NewSqlParameter("@ClientSpaceID", sprocketFile.ClientSpaceID, DbType.Int64));
                    cmd.Parameters.Add(NewSqlParameter("@FileData", sprocketFile.FileData, DbType.Object));
                    cmd.Parameters.Add(NewSqlParameter("@FileTypeExtension", sprocketFile.FileTypeExtension, DbType.String));
                    cmd.Parameters.Add(NewSqlParameter("@OriginalFileName", sprocketFile.OriginalFileName, DbType.String));
                    cmd.Parameters.Add(NewSqlParameter("@ContentType", sprocketFile.ContentType, DbType.String));
                    cmd.Parameters.Add(NewSqlParameter("@Title", sprocketFile.Title, DbType.String));
                    cmd.Parameters.Add(NewSqlParameter("@Description", sprocketFile.Description, DbType.String));
                    cmd.Parameters.Add(NewSqlParameter("@UploadDate", sprocketFile.UploadDate, DbType.DateTime));
                    cmd.ExecuteNonQuery();
                    scope.Complete();
                }
            }
            catch (Exception ex)
            {
                return(new Result(ex.Message));
            }
            finally
            {
                DatabaseManager.DatabaseEngine.ReleaseConnection();
            }
            return(new Result());
        }
Пример #5
0
        public Result Delete(SprocketFile sprocketFile)
        {
            Result result = new Result();

            if (OnBeforeDeleteSprocketFile != null)
            {
                OnBeforeDeleteSprocketFile(sprocketFile, result);
            }
            SQLiteConnection conn = null;

            if (result.Succeeded)
            {
                try
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        conn = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
                        SQLiteCommand cmd = new SQLiteCommand(procs["Delete SprocketFile"], conn);
                        cmd.Parameters.Add(new SQLiteParameter("@SprocketFileID", sprocketFile.SprocketFileID));
                        cmd.ExecuteNonQuery();
                        scope.Complete();
                    }
                }
                catch (Exception ex)
                {
                    return(new Result(ex.Message));
                }
                finally
                {
                    DatabaseManager.DatabaseEngine.ReleaseConnection();
                }
                if (OnSprocketFileDeleted != null)
                {
                    OnSprocketFileDeleted(sprocketFile);
                }
            }
            return(result);
        }
 public Result Store(SprocketFile sprocketFile)
 {
     SQLiteConnection conn = null;
     try
     {
         using (TransactionScope scope = new TransactionScope())
         {
             conn = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
             SQLiteCommand cmd = new SQLiteCommand();
             cmd.Connection = conn;
             if (sprocketFile.SprocketFileID == 0)
             {
                 sprocketFile.SprocketFileID = DatabaseManager.GetUniqueID();
                 cmd.CommandText = procs["Insert SprocketFile"];
             }
             else if (SelectSprocketFile(sprocketFile.SprocketFileID, false) == null)
                 cmd.CommandText = procs["Insert SprocketFile"];
             else
                 cmd.CommandText = procs["Update SprocketFile"];
             cmd.Parameters.Add(NewSqlParameter("@SprocketFileID", sprocketFile.SprocketFileID, DbType.Int64));
             cmd.Parameters.Add(NewSqlParameter("@ClientSpaceID", sprocketFile.ClientSpaceID, DbType.Int64));
             cmd.Parameters.Add(NewSqlParameter("@FileData", sprocketFile.FileData, DbType.Object));
             cmd.Parameters.Add(NewSqlParameter("@FileTypeExtension", sprocketFile.FileTypeExtension, DbType.String));
             cmd.Parameters.Add(NewSqlParameter("@OriginalFileName", sprocketFile.OriginalFileName, DbType.String));
             cmd.Parameters.Add(NewSqlParameter("@ContentType", sprocketFile.ContentType, DbType.String));
             cmd.Parameters.Add(NewSqlParameter("@Title", sprocketFile.Title, DbType.String));
             cmd.Parameters.Add(NewSqlParameter("@Description", sprocketFile.Description, DbType.String));
             cmd.Parameters.Add(NewSqlParameter("@UploadDate", sprocketFile.UploadDate, DbType.DateTime));
             cmd.ExecuteNonQuery();
             scope.Complete();
         }
     }
     catch (Exception ex)
     {
         return new Result(ex.Message);
     }
     finally
     {
         DatabaseManager.DatabaseEngine.ReleaseConnection();
     }
     return new Result();
 }
 public SprocketFile SelectSprocketFile(long id, bool getFileData)
 {
     try
     {
         using (TransactionScope scope = new TransactionScope())
         {
             SQLiteConnection connection = (SQLiteConnection)DatabaseManager.DatabaseEngine.GetConnection();
             SQLiteCommand cmd = connection.CreateCommand();
             cmd.Connection = connection;
             cmd.CommandText = procs["Select SprocketFile"];
             cmd.Parameters.Add(new SQLiteParameter("@SprocketFileID", id));
             cmd.Parameters.Add(new SQLiteParameter("@GetFileData", getFileData));
             SQLiteDataReader reader = cmd.ExecuteReader();
             SprocketFile entity;
             if (!reader.Read())
                 entity = null;
             else
                 entity = new SprocketFile(reader);
             reader.Close();
             scope.Complete();
             return entity;
         }
     }
     finally
     {
         DatabaseManager.DatabaseEngine.ReleaseConnection();
     }
 }