Как получить StyleRules в виде строкового вывода, используя ExCSS Parser

Я использую ExCSS для анализа и манипулирования строкой таблицы стилей. Все идет нормально.

Но я не могу найти никакой документации о том, как преобразовать правила манипулируемого стиля в строку.

Хотя код может не относиться к этому вопросу, это то, что я делаю:

private string ManipulateCSS(string styles)
{
    ExCSS.Parser parser = new ExCSS.Parser();
    var stylesheet = parser.Parse(styles);

    // here I perform specific manipulations 
    // which are not relevant to this question...
    stylesheet.StyleRules
                  .SelectMany(r => r.Declarations)
                  .Where(d => d.Name == "<something>"
                  ...

    ...

    // Now, the next line is where I'm having issues: 
    // how to return the whole string with styles out of this ExCSS parser?
    return stylesheet.StyleRules.ToString();
}

Спасибо за помощь!

1 ответ

Решение

Оказывается ToString() метод должен быть вызван в экземпляре ExCSS.StyleSheet, а я вызывал его в коллекции StyleRules.

Вам нужно только сделать следующее (согласно моему примеру кода в вопросе выше):

return stylesheet.ToString();

Я надеюсь, что этот ответ может сэкономить чужое время.

Другие вопросы по тегам