【问题标题】:What Characters need to be escaped in this below link in app.config file in C#?在 C# 的 app.config 文件中的以下链接中需要转义哪些字符?
【发布时间】:2014-11-11 01:25:56
【问题描述】:

当我在 .net 中构建解决方案时,由于 app.config 文件中的此链接,它会显示错误。我想我需要逃避一些角色。请提出建议。

<?xml version="1.0"?>
<!-- For more information on using app.config transformation
     visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <appSettings>
    <add key="MarketSolutionUrl" 
         value="http://www.example.com/Search?sid=90&cid=329&lid=1033"/>
  </appSettings>
</configuration>

http链接中哪些字符需要转义?

<add key="MarketSolutionUrl"
     value= "http://www.example.com/Search?sid=90&cid=329&lid=1033"/>

我尝试了&amp;=&amp;amp,但它仍然给出错误。请指教。

【问题讨论】:

  • & 没有转义为 &amp... 它应该是 & (注意分号)但这不重要。重要的是您在哪里使用该值...
  • @TJMonk15:是什么让您认为无效的 XML 无关紧要?

标签: c# .net xml app-config


【解决方案1】:

与其他 XML 一样,您需要转义所有五个特殊字符

&     &amp;
"     &quot;
`     &apos;
<     &lt;
>     &gt;

注意&amp;amp 后面缺少的分号。

【讨论】:

  • 在某些情况下转义某些字符是可选的。 &lt;a b='&gt;"'/&gt; 是有效的 XML。
  • @Athari:你是对的。您最近还看到那种风格的 XML 吗?我希望它被淘汰了。
  • new XDocument(new XElement("r", new XAttribute("a", "'\"&lt;&amp;&gt;"), new XText("'\"&lt;&amp;&gt;"))).ToString() == &lt;r a="'&amp;quot;&amp;lt;&amp;amp;&amp;gt;"&gt;'"&amp;lt;&amp;amp;&amp;gt;&lt;/r&gt; 惊喜!
【解决方案2】:

应该是:

   <add key="MarketSolutionUrl"  value="http://www.example.com/Search?sid=90&amp;cid=329&amp;lid=1033"/>

【讨论】:

    猜你喜欢
    • 2014-05-14
    • 2010-11-08
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多