protected async void Page_LoadComplete(object sender, EventArgs e) { Arquivo diretorio; if (!IsPostBack) { diretorio = await _arquivoRepository.FindWhereParentIsNullAsync(); } else { diretorio = await _arquivoRepository.FindByIdAsync(PegarIdDiretorioCorrente()); } await ListarArquivosAsync(diretorio); }
public async static Task DeleteAsync(long id) { IArquivoRepository arquivoRepository = ArquivoRepositoryFactory.Create(); if (!(await arquivoRepository.FindWhereParentEqualsAsync(id)).Any()) { IFileManager fileManager = FileManagerFactory.Create(); await fileManager.DeleteAsync(await arquivoRepository.FindByIdAsync(id)); await arquivoRepository.DeleteAsync(id); } else { throw new ArgumentException("Diretório não pode ser excluído pois possui dependentes"); } }
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); }
private async Task <Arquivo> PegarArquivoRequestAsync() { long idArquivo = Convert.ToInt64(Request.Params["idArquivo"]); return(await _arquivoRepository.FindByIdAsync(idArquivo)); }