【问题标题】:How to export Data into .csv file in linq c# via button click如何通过按钮单击将数据导出到 linq c# 中的 .csv 文件
【发布时间】:2020-05-12 19:26:20
【问题描述】:

我正在以一种简单的方式将表格(分数)的数据从数据库导出到 .csv 文件中。 我想通过单击按钮来做到这一点。我使用 WPF 并在 SQLite 中保存数据表 注意:表格不显示在DataGridView中 分数表有列:PersonId、PersonName、ScoreDate

 private void ExportToCSV(object sender, RoutedEventArgs e)
    {

        using (StreamWriter sw = File.AppendText(@"C:\Users\MAFA\Desktop\newfolder\endscores.csv"))
        {
            // how can i here call the table from the database ?! 

        };

    }

【问题讨论】:

    标签: c# wpf sqlite linq dbcontext


    【解决方案1】:

    我不确定你的 SQLite Note 数据结构是否是一个列表,但通常这样的东西对我有用:

    using (StreamWriter sw = File.AppendText(@"C:\Users\MAFA\Desktop\newfolder\endscores.csv"))
    {
        yourSQLiteNoteDataStruct
            .Select(i => $"{i.PersonId};{i.PersonName};{i.ScoreDate};")
            .ToList()
            .ForEach(s => sw.WriteLine(s));
    }
    

    这当然会锁定您的 UI 并使其在写入文件时暂时无响应。因此,您可以将事件处理程序 async 和流编写器部分包装在任务中:

    await Task.Run(() =>
    {
        ...
    });
    

    【讨论】:

    • 谢谢,其实这是一个列表,但我不明白你的回答。你能解释更多吗?还是您有其他答案解决方案?
    • 你到底有什么不明白的?你已经尝试过第一部分了吗?它会保存包含您需要的内容的 CSV 文件吗?那么你的用户界面会发生什么?
    猜你喜欢
    • 2023-02-16
    • 1970-01-01
    • 2022-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-25
    相关资源
    最近更新 更多