Esempio n. 1
0
        protected async void CriarDiretorioAsync_Click(object sender, EventArgs e)
        {
            string nomeDiretorio = this.InputNomeDiretorio.Value;

            Arquivo parent = await _arquivoRepository.FindByIdAsync(PegarIdDiretorioCorrente());

            Arquivo novoDiretorio = ArquivoFactory.Create(nomeDiretorio, true, parent);

            await _arquivoRepository.AddAsync(novoDiretorio);

            this.InputNomeDiretorio.Value = String.Empty;
        }
Esempio n. 2
0
        public async static Task <Arquivo> AddAsync(string nome, bool isDiretorio, long fkParent)
        {
            IArquivoRepository arquivoRepository = ArquivoRepositoryFactory.Create();

            if (isDiretorio)
            {
                if ((await arquivoRepository.FindWhereParentAndNameEqualsAsync(fkParent, nome)).Any())
                {
                    throw new ArgumentException("Diretório não pode ser inserido com nome repetido dentro desta pasta");
                }
            }

            // Adicionar verificação de versão para criar a referência com o versionamento correto

            Arquivo parent = await arquivoRepository.FindByIdAsync(fkParent);

            Arquivo arquivo = ArquivoFactory.Create(nome, isDiretorio, parent);

            await arquivoRepository.AddAsync(arquivo);

            return(arquivo);
        }