Respostas:
Você pode usar HttpUtility.HtmlDecode
Se você estiver usando o .NET 4.0+, também poderá usar o WebUtility.HtmlDecodeque não requer uma referência de montagem extra, pois está disponível no System.Netespaço para nome.
HttpUtility.UrlDecode
No .Net 4.0:
System.Net.WebUtility.HtmlDecode()
Não há necessidade de incluir montagem para um projeto C #
Como o @CQ diz, você precisa usar o HttpUtility.HtmlDecode , mas por padrão não está disponível em um projeto .NET não-ASP.
Para um aplicativo .NET não ASP, você precisa adicionar uma referência a System.Web.dll. Clique com o botão direito do mouse no seu projeto no Gerenciador de Soluções, selecione "Adicionar Referência" e procure a lista System.Web.dll.
Agora que a referência foi adicionada, você poderá acessar o método usando o nome completo System.Web.HttpUtility.HtmlDecodeou inserir uma usinginstrução para System.Webfacilitar as coisas.
Se não houver contexto do servidor (ou seja, sua execução offline), você pode usar o HttpUtility . HtmlDecode .
Use Server.HtmlDecodepara decodificar as entidades HTML. Se você quiser escapar do HTML, ou seja, exibir o caractere <e >para o usuário, use Server.HtmlEncode.
Para decodificar HTML, veja o código abaixo
string s = "Svendborg Værft A/S";
string a = HttpUtility.HtmlDecode(s);
Response.Write(a);
Saída é como
Svendborg Værft A/S
Também vale a pena mencionar que, se você estiver usando o HtmlAgilityPack como eu, deveria usá-lo HtmlAgilityPack.HtmlEntity.DeEntitize(). É preciso a stringe retorna a string.
Escreva um método estático em alguma classe de utilitário, que aceita string como parâmetro e retorna a string html decodificada.
Inclua o conteúdo using System.Web.HttpUtilityem sua classe
public static string HtmlEncode(string text)
{
if(text.length > 0){
return HttpUtility.HtmlDecode(text);
}else{
return text;
}
}
Para .net 4.0
Adicione uma referência ao System.net.dllprojeto using System.Net;e use as seguintes extensões
// Html encode/decode
public static string HtmDecode(this string htmlEncodedString)
{
if(htmlEncodedString.Length > 0)
{
return System.Net.WebUtility.HtmlDecode(htmlEncodedString);
}
else
{
return htmlEncodedString;
}
}
public static string HtmEncode(this string htmlDecodedString)
{
if(htmlDecodedString.Length > 0)
{
return System.Net.WebUtility.HtmlEncode(htmlDecodedString);
}
else
{
return htmlDecodedString;
}
}