Reputation: 17466
See this code:
namespace TestHtmlDecode
{
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Web;
[TestClass]
public class TestHtmlDecode
{
private string Convert(string input)
{
return HttpUtility.HtmlDecode(input);
}
[TestMethod]
public void TestLeftBrace()
{
Assert.AreEqual("{", Convert("{"));
}
[TestMethod]
public void TestGreaterThan()
{
Assert.AreEqual(">", Convert(">"));
}
}
}
TestGreaterThan
passes, but TestLeftBrace
fails (Convert
returns {
). Why is this?
Upvotes: 0
Views: 462
Reputation: 5487
Looks like there are two things going on here.
&lbrace
is a { and not [ (http://jsfiddle.net/B7AAh/1/)
It doesn't look like &lbrace
is included in the list of of known items. Source code is here http://referencesource.microsoft.com/#System/net/System/Net/WebUtility.cs which refers to the list of entities found here http://www.w3.org/TR/REC-html40/sgml/entities.html
Upvotes: 3