将Html渲染或转换为'格式'文本(.NET)

时间:2008-12-10 16:06:14

标签: c# .net html string html-encode

我正在将另一个测试/错误跟踪工具中的一些数据导入到tfs中,我想转换它的描述,它是简单的HTML,所以是一个普通的字符串,其中保留了HTML的“布局”。

例如:

<body>
  <ol>
    <li>Log on with user Acme &amp; Co.</li>
    <li>Navigate to the details tab</li>
    <li>Check the official name</li>
  </ol>
  <br>
  <br>
  Expected Result:<br>
  official name is filled in<br>
  <br>
  Actual Result:<br>
  The &amp;-sign is not shown correctly<br>
  See attachement.
</body>

将插入换行符并将HTML实体翻译成纯文本:

1. Log on with user Acme & Co.
2. Navigate to the details tab
3. Check the official name

Expected Result:
official name is filled in

Actual Result:
The &-sign is not shown correctly
See attachment

我目前可以使用正则表达式替换一些带有换行符的标签并删除其余部分,但替换HTML实体和<ol><ul>等内容似乎是我重新发明的东西(浏览器) ?)。所以我想知道是否有人在我面前这样做了。我无法使用Google找到它。

2 个答案:

答案 0 :(得分:5)

您可以尝试将其加载到HTML agility pack而不是正则表达式吗?如果它是xhtml,那么xslt转换可能是一个不错的选择。

答案 1 :(得分:0)

最后,一旦我对TFS更加熟悉,我自定义了工作项类型以包含新的HTML字段,并将内容复制到该字段中。

这个解决方案要好得多,因为我们现在可以看到该字段的预期格式。