public void Update(Publicacao p) { //Lemos todas as linhas do CSV List <string> linhas = ReadAllLinesCSV(PATH); //Removemos as linhas com o código comparado // Nesse caso o usuário só consegue alterar a sua publicação e não os comentarios/likes; linhas.RemoveAll(x => x.Split(";")[0] == p.IdPublicacao.ToString()); //Adicionamos a lista alterada linhas.Add(PrepareLineCSV(p)); //Reescrevemos o csv com a lista alterada RewriteCSV(PATH, linhas); }
public List <Publicacao> ReadAll() { List <Publicacao> publicacoes = new List <Publicacao>(); string[] linhas = File.ReadAllLines(PATH); foreach (string item in linhas) { string[] linha = item.Split(";"); Publicacao novaPublicacao = new Publicacao(); novaPublicacao.IdPublicacao = int.Parse(linha[0]); novaPublicacao.Imagem = linha[1]; novaPublicacao.Legenda = linha[2]; novaPublicacao.IdUsuario = int.Parse(linha[3]); novaPublicacao.Likes = int.Parse(linha[4]); novaPublicacao.FotoUsuario = linha[5]; publicacoes.Add(novaPublicacao); } return(publicacoes); }
// Implementado a Interface com o CRUD public void Create(Publicacao p) { string[] linhas = { PrepareLineCSV(p) }; File.AppendAllLines(PATH, linhas); }
public string PrepareLineCSV(Publicacao p) { //Transforma o objeto Publicação em uma linha de arquivo CSV return($"{p.IdPublicacao};{p.Imagem};{p.Legenda};{p.IdUsuario};{p.Likes};{p.FotoUsuario}"); }