Как включить файл css в преобразование XML? - PullRequest
1 голос
/ 06 июля 2010

Я создаю html-файл на основе xml и xsl с помощью XslCompiledTransform в c # .net.Это прекрасно работает.

Но в xsl также включен файл css, и мне интересно, есть ли способ включить стили CSS в выходной html-файл, чтобы его можно было показывать как отдельныйфайл (поэтому мне не нужно копировать файл css туда, куда я хочу увидеть файл).

Определить стиль каждого тега явно не вариант, к сожалению, и файл, конечно,действительно безобразно без CSS.

Любая помощь будет очень ценится!:)

1 Ответ

1 голос
/ 06 июля 2010

В выходной html добавьте ссылку на таблицу стилей внутри тега <head>.

<link rel="stylesheet" type="text/css" href="mystyle.aspx" />

Затем добавьте страницу в свой проект с именем mystyle.aspx.В Page_Load этого файла вы выполняете преобразование xslt для вывода только части css.(И удалите часть преобразования css для html-страниц.)

protected void Page_Load(object sender, EventArgs e) {
    Response.Clear();
    Response.ContentType = "text/css";

    string css = // Do your xslt transformation here

    Response.Write( css );
    Response.End();
}

Если CSS одинаков для всех страниц, вы можете добавить кеширование в приведенный выше код, чтобы сэкономить при выполнении преобразованиякаждый раз.

Возможно, вам придется использовать некоторые параметры для указания вашего xml / xslt, но вы не предоставили никакой информации по этому вопросу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...