Member 13200081 Ответов: 1

Как экспортировать данные из базы данных в exel с помощью mvc.net-что?


пожалуйста, любезно помогите мне, где я ошибся с моим кодом.
Мой файл excel добавляет только последнюю строку базы данных в файл excel, который загружается.

Что я уже пробовал:

Below is my is my controller with my Export void function.

<pre>EntertainmentEntities dbmodel = new EntertainmentEntities();
        private int count = 1;

public void Export()
{
    using (var p = new ExcelPackage())
    {
        List<MusicViewModel> myMusicList = dbmodel.Music.Select(x => new MusicViewModel
        {
            ID = x.ID,
            Artist = x.Artist,
            Song = x.Song,
            Genre = x.Genre,
            MusicDate = x.MusicDate
        }).ToList();

        var ws = p.Workbook.Worksheets.Add("MySheet");
        ws.Cells["A1"].Value = "testing my code";
        foreach (var item in myMusicList)
        {
            ws.Cells[string.Format("A{0}", count)].Value = item.ID;
            ws.Cells[string.Format("B{0}", count)].Value = item.Artist;
            ws.Cells[string.Format("C{0}", count)].Value = item.Song;
            ws.Cells[string.Format("D{0}", count)].Value = item.Genre;
            ws.Cells[string.Format("E{0}", count)].Value = item.MusicDate;

        }

        p.SaveAs(new FileInfo(@"C:\Chazz Archives\myworkbook.xlsx"));
    }
}

1 Ответов

Рейтинг:
7

F-ES Sitecore

Вы не увеличиваете "количество", поэтому вы просто постоянно перезаписываете одну и ту же строку

foreach (var item in myMusicList)
{
    ws.Cells[string.Format("A{0}", count)].Value = item.ID;
    ws.Cells[string.Format("B{0}", count)].Value = item.Artist;
    ws.Cells[string.Format("C{0}", count)].Value = item.Song;
    ws.Cells[string.Format("D{0}", count)].Value = item.Genre;
    ws.Cells[string.Format("E{0}", count)].Value = item.MusicDate;
    count++;

}