Wyjątek FileNotFoundException z SaveAs() w .NET 10

Curtis Chau
Curtis Chau
Updated: 3 lipca 2026

Wywołanie WorkBook.SaveAs() w projekcie .NET 10 może spowodować, że Visual Studio wyświetli FileNotFoundException dla IronXL.XmlSerializers. W większości przypadków jest to wyjątek pierwszej szansy, przechwycony przez debugger, a nie realna awaria wykonania, a plik Excel nadal jest zapisywany. Użyj poniższych kroków, aby potwierdzić, który widzisz, i zatrzymać debugger przed przerwaniem.

System.IO.FileNotFoundException: Could not load file or assembly 'IronXL.XmlSerializers'
Text

Wiadomość pochodzi z testowania serializacji XML w .NET w poszukiwaniu opcjonalnego zestawu serializera, który nie istnieje. Środowisko wykonawcze zarządza błędem wewnętrznie i kontynuuje, więc skoroszyt nadal się zapisuje. Przy wyłączonej funkcji Just My Code, debugger przerywa w momencie podniesienia wewnętrznego wyjątku, co sprawia, że obsłużone zdarzenie wygląda jak awaria.

Rozwiązanie

1. Odtwórz przy minimalnym przepływie pracy

Utwórz nową aplikację ASP.NET Core Web, celującą w .NET 10 i zainstaluj IronXL.Excel wersję 2026.6.1.

<PackageReference Include="IronXL.Excel" Version="2026.6.1" />
XML

Zapisz pojedynczą wartość i zapisz ją, aby potwierdzić zachowanie.

using IronXL;

WorkBook workbook = WorkBook.Create();
WorkSheet sheet = workbook.DefaultWorkSheet;
sheet["A1"].Value = "Hello, World";
workbook.SaveAs("output.xlsx");

2. Włącz Just My Code

Otwórz opcje debugera Visual Studio i włącz Just My Code. Kiedy jest wyłączona, debugger przerywa na wyjątkach, które biblioteka obsługuje wewnętrznie; włączenie jej pozwala, by obsłużone wyjątki przechodziły bez przerywania sesji.

3. Potwierdź, że plik został wygenerowany

Sprawdź, czy output.xlsx został zapisany w ścieżce wyjściowej. Pomyslnie zapisany plik informuje, że przerwanie było wyjątkiem pierwszej szansy, a nie awarią wykonania.

Zwróć uwagę: Wyjątek FileNotFoundException pierwszej szansy powiązany z serializacją XML .NET może wystąpić, nawet gdy generowanie plików się powiedzie.

Wskazówki dotyczące debugowania

Nie ma samodzielnego pakietu NuGet IronXL.XmlSerializers. Nie próbuj dodawać, aby usunąć wiadomość; nie rozwiąże to niczego, a zestaw nie jest przeznaczony do instalowania osobno.

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 2,362,812Wersja:2026.11właśnie wydany