мы сталкиваемся с подобной проблемой.Решение, к которому мы пришли, состояло в том, чтобы не использовать xslt для этого случая, а вместо этого использовать преобразования Linq в Xml при обработке данных.Вы можете использовать ключевое слово c # yield для итерации по потоку xml и таким образом решить проблему с файлом.См. потоковую передачу с linq to xml
. Природа xslt требует загрузки xml в память.что должно произойти, это то, что вам нужно разбить большой файл на более управляемые части.если вы используете технику потоковой передачи xml, вы можете разбить документ на подэлементы, к которым затем можно применить xslt по отдельности.вам, возможно, придется переписать xslt, чтобы учесть это поведение.
Помимо этого, единственный другой вариант - добавить больше оборудования, но это может даже потребовать обновления операционной системы в зависимости от ограничений ОЗУ ...