Đạt Lữ Ответов: 1

- "В чем моя ошибка? И почему мой файл excel не создает файл? ]


в чем моя ошибка, все? я не знаю, почему savefiledialog не может создать файл excel, я проверяю see 1 file app created is shortcut temporary file in (C:\Users\admin\AppData\Roaming\Microsoft\Windows\Recent)

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

private void btnExportExcel_Click(object sender, EventArgs e)  
     {  
           
         string filePath = GetFileNameToSave();  
  
         if (string.IsNullOrEmpty(filePath))  
         {  
               return;  
  
              
         }  
        pivotGrid.ExportToXlsx(filePath);  
         ActionNotifier.Information("Exported file  Excel.");  
  
         System.Diagnostics.Process.Start(filePath);  
     }  
  
     static string GetFileNameToSave()  
     {  
         string fNameDefault = String.Format("{0}.{1}.xlsx", "Export", DateTime.Now.ToString("yy.MM.dd_hh.mm"));  
         using (SaveFileDialog dlgSave = new SaveFileDialog { Title = "Export Excel", Filter = "Excel file |*.xlsx ", FileName = fNameDefault })  
         {  
               
             dlgSave.OverwritePrompt = true;  
             dlgSave.RestoreDirectory = true;  
             if (dlgSave.ShowDialog() != DialogResult.OK || !dlgSave.CheckPathExists)  
               
                 return null;  
                   
             dlgSave.AddExtension = true;  
  
               
               
             string fileName = dlgSave.FileName.Trim();  
              
             if (!fileName.EndsWith(".xlsx"))  
                 fileName += ".xlsx";  
               
             return fileName;  
         }  
     }  

Dave Kreskowiak

Почему ты думаешь, что это не сработает? Что это за приложение? ASP.NET или что?

У вас есть SaveFileDialog? Вы получаете от него имя файла обратно, как и ожидалось? Создается ли файл по пути, указанному в файле fileName?

"Это не работает" не является правильным описанием проблемы.

Đạt Lữ

C# winform
описание:
это действительно не работа, я не получил файл

Richard MacCutchan

Где находится код, который сохраняет файл на диск?

1 Ответов

Рейтинг:
5

Dave Kreskowiak

Итак, поставьте точку останова во второй строке обработчика нажатия кнопки и запустите код.

Когда точка останова будет достигнута, наведите курсор мыши на нее. filePath чтобы проверить содержимое. Вы должны получить полный путь к файлу для записи. Если нет, то у вас есть проблема в вашем методе GetFileNameToSave. Поместите туда точку останова и запустите ее снова.

Если у вас есть путь к файлу, проблема будет заключаться в вашей сводной сетке, что бы это ни было.


Đạt Lữ

Моя проблема просто ошибка на сервере, то есть (пользователь просто запускает приложение = ярлык с ролью) не запускает непосредственно приложение.
p / s: мое приложение работает на локальном нормальном режиме, не имеет проблем

Отладка ОК, путь правильный, а не неправильный.

Dave Kreskowiak

Я понятия не имею, о чем ты говоришь.

Сервер? Это приложение WinForms. В этом коде нет никакого сервера.