Я столкнулся со странной проблемой со списками в F #.
Я использую XamlXmlReader для создания списка и последовательности, как:
let xaml_reader = XamlXmlReader(filename)
let nodes_seqs = seq { while xaml_reader.Read() do yield xaml_reader }
Этот код работает отлично, но если я сделаю то же самое со списком:
let xaml_reader2 = XamlXmlReader(filename)
let nodes_list = [ while xaml_reader2.Read() do yield xaml_reader2 ]
Список результатов неверен, т. Е. Элемент head последовательности содержит правильные NodeType, LinePosition, LineNumber и т. Д., Но элемент head списка является своего рода мусором с указанием другого места в XAML. Пример:
let head_of_seq = Seq.head nodes_seq
let head_of_list = List.head nodes_list
После того, как у меня есть:
- head_of_seq.NodeType = NamespaceDeclaration
- head_of_seq.LineNumber = 2
- head_of_seq.LinePosition = 2
Но:
- head_of_list.NodeType = Нет
- head_of_list.LineNumber = 111
- head_of_list.LinePosition = 30
XAML-файл сам по себе корректен и сгенерирован Microsoft Bend. Есть какие-нибудь подсказки? Я буду признателен за любую помощь.