Преобразование Linq в XSLT

Есть ли способ преобразовать запросы LINQ в XSLT? так же, как LINQ может быть преобразован в SQL?

Я имею в виду, что если у меня есть твердый, четко определенный XML (соответствует XSD), есть ли способ скомпилировать материал из System.Linq.Expressions в XSLT в отношении этого XML ?

Спасибо.

На запрос Dimitries я постараюсь немного уточнить ... В основном у меня есть некоторые данные в одном месте (в основном это куски сериализуемых данных xml), и мне нужно их обработать, Мне нужно объединить и обработать их.

И входящие исходные данные, и данные выходных результатов являются сериализуемыми в формате XML и соответствуют четко определенному XSD.

Я хочу генерировать логику обработки динамически - в другом месте. И позвольте моему пользователю изменить и поиграть с обработкой. Я могу легко представить процесс обработки с помощью деревьев выражений. Деревья выражений похожи на деревья синтаксического анализа и могут захватывать программный код. Именно так работает linq to SQL: деревья выражений преобразуются в запросы SQL.

Поскольку все данные о доходах и выходные данные являются четко определенным XML, я могу легко выполнить преобразование с помощью XSLT, но я не знаком с XSLT достаточно, чтобы написать динамический генератор XSLT. Итак, я подумал, что смогу построить преобразования на C # и преобразовать их в XSLT ... опять же, это не C # общего назначения, а, вероятно, конкретные запросы к четко определенному поставщику данных.

Для примера:

(Not реальный код)

var schemas = XSchemaSet.Load("a","b");
var doc = XDocument.Load("File",schemas);

var result = from node in doc.Nodes
             where node.Name == "Cats" || node.Name == "Dogs"
             select (new Node(){Name = "Animal Owner", Value = node.Owner)
var newDoc = new XDocument().AddNodes(result);
newDoc.Validate(schemas);

В основном мне нужно что-то, что будет работать так ... Я могу написать это в одном запросе linq, если использую IQueryable.Aggregate

9
задан marc_s 6 December 2015 в 21:23
поделиться