System.OutOfMemoryException i VS

0

Witam,

Czy jest jakiś sposób na pozbycie się tego wyjątku w programie uruchamianym z poziomu Visual Studio? Mam pliki zip zawierające po jednym pliku XML i próba wczytania pojedynczych plików rzuca losowo ten wyjątek w momencie gdy zużycie pamięci sięga ponad 800MB.

using (var file = File.OpenRead(fileName))
{
    using (var zip = new ZipArchive(file, ZipArchiveMode.Read)) //zip ma gdzieś 60MB wielkości
    {
        foreach (var entry in zip.Entries)
        {
            using (var stream = entry.Open()) //xml ma gdzieś 350MB wielkości
            {
                using (var ms = new MemoryStream())
                {
                    stream.CopyTo(ms); //tutaj
                    ms.Position = 0;
                    using (var xmlReader = XmlReader.Create(ms))
                    {
                    }
                }
            }
        }
    }
}

Pozdrawiam,

mr-owl

0

Skompiluj kod na 64 bity

1

po co Ci dodatkowy memory stream? nie możesz przekazać do XmlReadera po prostu stream?

0

Witam,

Problem występuje tylko jak uruchamiam program z poziomu Visual Studio, jak uruchamiam sam program już problemów nie ma. Pytam się czy jest jakieś obejście na to bo trochę męczące jest szukanie błędu którego nie ma.

Pozdrawiam,

mr-owl

1 użytkowników online, w tym zalogowanych: 0, gości: 1