Utilizzo della libreria CsvHelper in VB.NET

di il
18 risposte

18 Risposte - Pagina 2

  • Re: Utilizzo della libreria CsvHelper in VB.NET

    30/12/2022 - sspagnamn76 ha scritto:


    Come da tua richiesta eccoti un pò di codice. […]

    Scusa, ma tu hai scritto “Con il wrapper manuale ci sono riuscito mentre con CsvHelper no”.

    Se dici che “con CsvHelper non ci sei riuscito”, do per scontato che ci abbia almeno provato.
    O no?

    Il codice che hai postato sopra è lo stesso di prima, ma non c'è l'uso di CsvHelper che dovresti aver tentato di utilizzare.

    Se non hai provato, perché non l'hai fatto?
    Se ci hai provato, cosa non ha funzionato?

    La tua richiesta continua a ripetersi sempre uguale: “ho questi dati, li esporto manualmente, ma voglio usare CsvHelper… ditemi voi”.

    Non siamo qui a scrivere codice a richiesta per convertire l'esportazione di dati in CSV utilizzando una specifica libreria, ma per dare una mano, solo che continua a non essere chiaro - o probabilmente non c'è, a questo punto, dopo tutti i messaggi scambiati - qual è la difficoltà specifica nell'usare CsvHelper o qual è l'errore/problema nel codice che dovresti aver scritto.

    Aspettare che altri facciano il lavoro al proprio posto può anche essere lecito, ma allora che lo si chieda esplicitamente senza girarci attorno e senza far perdere tempo a chi, come me, tempo per farlo conto terzi non ne ha.

  • Re: Utilizzo della libreria CsvHelper in VB.NET

    No no voleso solo un suggerimento. Il codice me lo scrivo ancora volentieri da solo.

    Grazie,

    Simo

  • Re: Utilizzo della libreria CsvHelper in VB.NET

    30/12/2022 - sspagnamn76 ha scritto:


    No no voleso solo un suggerimento. Il codice me lo scrivo ancora volentieri da solo.

    Perfetto, così torniamo esattamente al punto iniziale: suggerimento… riguardo cosa nello specifico? che dubbi hai? cosa non riesci a fare? che errore ottieni?

    Se non spieghi su cosa vuoi il suggerimento, quello che al massimo ti si può dire è “studia la documentazione e prova”, e se non riesci verrai a chiedere aiuto.

    Finché non cominci, che suggerimento mai ti si potrebbe/dovrebbe dare?

    Eppure non mi sembra così complesso da capire qual è l'informazione mancante... magari mi spiego male io.

  • Re: Utilizzo della libreria CsvHelper in VB.NET

    Ciao,

    ecco il mio codice per avere un vostro gentile parere :

    Namespace BrStandings.SportServices
       Public Class SoccerService
           Inherits BaseService(Of SoccerStandings)

           Public Sub WriteCsv(currentStandings As SoccerStandings, seasonCode As String)

               Dim fileName As String =
                       $"{Context.CsvTempDir}\\{DateTime.Now.ToShortDateString()}_{seasonCode}_{ _
                       Sports.SportsAttributeAssociations(Sports.SportType.SOCCER).CsvFileName}"

               Using writer = New StreamWriter(fileName)
                   Dim config = New CsvConfiguration(CultureInfo.InvariantCulture) With {
                           .MissingFieldFound = Nothing
                           }
                   Using csv = New CsvWriter(writer, config)
                       For Each standing In currentStandings.Standings
                           For Each group In standing.Groups
                               csv.WriteField(group.Name)
                               csv.NextRecord()

                               csv.WriteField("rank")
                               csv.WriteField("team")
                               csv.WriteField("mp")
                               csv.WriteField("w")
                               csv.WriteField("d")
                               csv.WriteField("l")
                               csv.WriteField("g")
                               csv.WriteField("pts")
                               csv.NextRecord()

                               Dim tableRows = New List(Of SoccerStandingsTableRow)()

                               For Each groupStanding In group.Standings
                                   Dim row = New SoccerStandingsTableRow() With {
                                           .Rank = groupStanding.Rank,
                                           .Team = groupStanding.Competitor.Name,
                                           .Mp = groupStanding.Played,
                                           .W = groupStanding.Win,
                                           .D = groupStanding.Draw,
                                           .L = groupStanding.Loss,
                                           .G = $"{groupStanding.GoalsAgainst}:{groupStanding.GoalsFor}",
                                           .Pts = groupStanding.Points
                                           }
                                   tableRows.Add(row)
                               Next
                               csv.WriteRecords(tableRows)
                               csv.NextRecord()
                           Next
                       Next
                   End Using
               End Using
           End Sub
       End Class
    End Namespace

    Grazie,
    Simone

Devi accedere o registrarti per scrivere nel forum
18 risposte