Здравствуйте, <Аноним>, Вы писали:
А>с сервера А на сервер С, через некоторое транзитное звено — Б передаются некоторые данные большого объёма.
А>Сервер А отдаёт в некотором своём формате, сервер С принимает в своём (ну здесь просто XML согласно своей XSD, в данном случае не суть важно)
А>задача сервера Б — принять от сервера А, преобразовать в XML-формат для сервера С.
А>поскольку объёмы данных велеки и передача данных осуществляется каждые 10-15 минут, сервер Б должен осуществлять это преобразование достаточно быстро, на лету...
А>подскажите, используя какое именно АПИ, какую технику (технологию и т.д.) следует применить на сервере Б, что бы достичь максимально возможной производительности (такие факторы как ширина канала, прочие алгоритмы и т.д. здесь можно не учитывать, интересует исключительно способ генерирования XML в соответствии с используемой схемой)
А>(C#; .NET Framework 2.0)
XSLT трансформация. Пишете XSLT файл в котором описываете шаблоны по которым будет производится исходного XML в целевой XML и используете XslTransform.
По поводу XslTransform — это класс от первого фреймворка, во втором он помечен как deprecated и предлагается использовать новый XslCompiledTransform.
Однако, не знаю почему, но XslCompiledTransform работает на несколько порядков медленнее чем XslTransform...
Поэтому я пока во втором фреймворке продолжаю пользовать XslTransform не обращая внимания на эти ворнинги:
Warning 1 'System.Xml.Xsl.XslTransform' is obsolete: 'This class has been deprecated. Please use System.Xml.Xsl.XslCompiledTransform instead. http://go.microsoft.com/fwlink/?linkid=14202'
возможно ктото подскажет чем (кроме XslTransform) во втором фреймворке можно произвести трансформацию также быстро как с помощью XslTransform?
... << RSDN@Home 1.2.0 alpha rev. 676>>