使用.NET生成XML时导入XSLT
在做一个ASP的维护项目,变更的代码要加注释,纳品前要达到目标值(目标值是按照千行代码统计的)。几十个文件手动统计太累了,于是写了一个统计代码的工具,其中一个功能是将统计结果保存成XML文件,为了方便查看又写了一XSLT。
注释风格:
生成的XML格式如下:
这两行代码,就生成了这条XML语句:
使用XmlProcessingInstruction就可以了,就是这么方便,呵呵。
注释风格:
1
' Start(Mod) 2005/12/02 谷常生 [00000007]
2
nShishaMeisaiNgFlg = 1
3
' End (Mod) 2005/12/02 谷常生 [00000007]
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
生成的XML格式如下:
1
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
2
<?xml-stylesheet type="text/xsl" href="gucs.xslt"?>
3
<CountInformation>
4
<Item>
5
<FileName>E:\project\PRユーザ管理変更\03 製造\01 ソース\In-Process\PR_PORTAL\PR_USER\SCRIPT\PRU_AdmRegQreLstFtr.asp</FileName>
6
<Total>51</Total>
7
<CodeOnly>31</CodeOnly>
8
<Comment>13</Comment>
9
<Blank>7</Blank>
10
<CommentCode>2</CommentCode>
11
</Item>
12
<Item>
13
<FileName>E:\project\PRユーザ管理変更\03 製造\01 ソース\In-Process\PR_PORTAL\PR_USER\SCRIPT\PRU_CommonFunction.inc</FileName>
14
<Total>1163</Total>
15
<CodeOnly>655</CodeOnly>
16
<Comment>330</Comment>
17
<Blank>178</Blank>
18
<CommentCode>390</CommentCode>
19
</Item>
20
<Item>
21
<FileName>Total</FileName>
22
<Total>1214</Total>
23
<CodeOnly>686</CodeOnly>
24
<Comment>343</Comment>
25
<Blank>185</Blank>
26
<CommentCode>392</CommentCode>
27
</Item>
28
</CountInformation>
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/None.gif)
14
![](/Images/OutliningIndicators/None.gif)
15
![](/Images/OutliningIndicators/None.gif)
16
![](/Images/OutliningIndicators/None.gif)
17
![](/Images/OutliningIndicators/None.gif)
18
![](/Images/OutliningIndicators/None.gif)
19
![](/Images/OutliningIndicators/None.gif)
20
![](/Images/OutliningIndicators/None.gif)
21
![](/Images/OutliningIndicators/None.gif)
22
![](/Images/OutliningIndicators/None.gif)
23
![](/Images/OutliningIndicators/None.gif)
24
![](/Images/OutliningIndicators/None.gif)
25
![](/Images/OutliningIndicators/None.gif)
26
![](/Images/OutliningIndicators/None.gif)
27
![](/Images/OutliningIndicators/None.gif)
28
![](/Images/OutliningIndicators/None.gif)
由于使用XmlDocument生成XML,不可能手动写字符串,只能使用系统提供的对象,找了半天的资料,最后还是在MSDN中找到了,以下为实现代码:
1
XmlProcessingInstruction xsl = doc.CreateProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"gucs.xslt\"");
2
doc.InsertBefore(xsl, doc.DocumentElement);
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
这两行代码,就生成了这条XML语句:
1
<?xml-stylesheet type="text/xsl" href="./gucs.xslt"?>
![](/Images/OutliningIndicators/None.gif)
使用XmlProcessingInstruction就可以了,就是这么方便,呵呵。