Всем привет. Давно не писал на C#, но для текущего домашнего проекта он мне подходит лучше всего, в связи с этим возникло желание сделать кроссплатформенную софтинку (хочется чтоб работало не только в windows-е, но и в Linux-е).
С графикой всё просто - avalonia ui. Но возник вопрос, чем парсить xml (знаю про 3 варианта 2 DOM 1 SAX System.Xml - это то что я когда-то даже использовал, когда альтернатив особо не было, LINQ to XML это то что посвежее на практике не использовал, но видел как используют другие люди, вроде заявлено что пользоваться им проще, да и выглядит оно поудобнее и наконец XmlReader). У меня всё бы просто было, но мне очень хочется парсить быстро (надо переварить 1 террабайт xml файлов, желательно за приемлемое время, т.к. задача по перевариванию такого объёма не разовая, одиночные файлы не очень большие, 10 мегабайт, наверное самый большой будет, но их очень и очень много). Потому хочется услышать у опытных в парсинге XML товарищей что лучше брать. (если бы была проблема с большими файлами то понятно что у XmlReader-а не было бы альтернатив, но тут много мелких файлов и потому оперативку не жалко, всё упирается в скорость чтения с диска и асинхронщину скорее всего). Да, чтоб было понятнее, у моего файла структура примерно такая
<SuperPuperTag somekey="abracadabra" somekey:ggwp="eazy"><tag1>...</tag1><tag2>...</tag2>...<tagN>...</tagN></SuperPuperTag>
Второй вопрос возник с неймспейсами в xml. Честно скажу сложные xml мне не доводилось парсить, обычно были json-ы или простые xml, а в данном случае авторы формата файлов немного извращенцы, и потому сделали такую конструкцию:
<SuperPuperTag somekey="abracadabra" somekey:ggwp="eazy">...</SuperPuperTag>