Exemplo n.º 1
0
        public static void Deletar(UnidadeDoExperimento unidadeDoExperimeto)
        {
            Feedback feedback = FeedbackService.GetById(unidadeDoExperimeto.FeedbackId);

            FeedbackService.Deletar(feedback);
            AbstractService.Deletar(unidadeDoExperimeto, "UnidadeDoExperimento");

            string caiminhoImagem = ImagemService.GetFullPath(unidadeDoExperimeto.NomeImagem);

            using (IDbConnection cnn = new SQLiteConnection(GetConnectionString())) {
                IEnumerable <string> data = cnn.Query <string>("SELECT NomeImagem FROM UnidadeDoExperimento WHERE NomeImagem = @NomeImagem", unidadeDoExperimeto);
                if (data.ToList <string>().Count == 0)
                {
                    File.Delete(caiminhoImagem);
                }
            }

            if (!string.IsNullOrEmpty(unidadeDoExperimeto.NomeAudio))
            {
                string caiminhoAudio = AudioService.GetFullPath(unidadeDoExperimeto.NomeAudio);
                using (IDbConnection cnn = new SQLiteConnection(GetConnectionString())) {
                    IEnumerable <string> data = cnn.Query <string>("SELECT NomeImagem FROM UnidadeDoExperimento WHERE NomeAudio = @NomeAudio", unidadeDoExperimeto);
                    if (data.ToList <string>().Count == 0)
                    {
                        File.Delete(caiminhoAudio);
                    }
                }
            }
        }
Exemplo n.º 2
0
        public static void Salvar(UnidadeDoExperimento unidadeDoExperimento)
        {
            if (string.IsNullOrEmpty(unidadeDoExperimento.NomeImagem))
            {
                throw new System.Exception("Toda unidade do experimento deve ter uma imagem!");
            }

            unidadeDoExperimento.NomeImagem = ImagemService.CopiaImagemParaPasta(unidadeDoExperimento.NomeImagem);
            unidadeDoExperimento.NomeAudio  = AudioService.CopiaAudioParaPasta(unidadeDoExperimento.NomeAudio);

            AbstractService.Salvar(unidadeDoExperimento,
                                   "UnidadeDoExperimento",
                                   "INSERT INTO UnidadeDoExperimento (NomeImagem, FeedbackId, NomeAudio) VALUES (@NomeImagem, @FeedbackId, @NomeAudio); SELECT CAST(last_insert_rowid() as int)",
                                   "UPDATE UnidadeDoExperimento SET NomeImagem = @NomeImagem, FeedbackId = @FeedbackId, NomeAudio = @NomeAudio WHERE Id = @Id");
        }