2016-02-16 24 views
39

Potrzebuję odszyfrować znaki HTML w .NET Core (MVC6). Wygląda na to, że .NET Core nie ma funkcji WebUtility.HtmlDecode, którą wszyscy używali wcześniej. Czy istnieje .NET Core?Użycie WebUtility.HtmlDecode w .NET Core

+1

Spójrz: https://msdn.microsoft.com/library/73z22y6h%28v= vs.100% 29.aspx – duDE

+2

@duDE, pyta .NET Core zamiast .NET 4. –

Odpowiedz

61

Jest w klasie System.Net.WebUtility:

// 
// Summary: 
//  Provides methods for encoding and decoding URLs when processing Web requests. 
public static class WebUtility 
{ 
    public static string HtmlDecode(string value); 
    public static string HtmlEncode(string value); 
    public static string UrlDecode(string encodedValue); 
    public static byte[] UrlDecodeToBytes(byte[] encodedValue, int offset, int count); 
    public static string UrlEncode(string value); 
    public static byte[] UrlEncodeToBytes(byte[] value, int offset, int count); 
} 
+1

pakiet nuget https://www.nuget.org/packages/Microsoft.AspNet.WebUtilities/ –

+8

.NET Core 1.1 użyj https://www.nuget.org/packages/Microsoft. AspNetCore.WebUtilities – WolfyUK

0

To nie jest odpowiedź, ale to jest moja podpowiedź, jak rozwiązać tego rodzaju problemów. Jest to pomocne w przypadku, gdy używasz ReSharper.

Zacząłem rozwijać aplikacje .NET Core i spotkałem się z wieloma problemami, takimi jak nie znałem nazw pakietów, w których znajdują się moje zwykłe zajęcia. ReShareper ma dużą funkcjonalność, aby rozwiązać ten:

enter image description here

odjazdu następny artykuł więcej szczegółów - Finding, Exploring, and Installing NuGet Packages. Ta funkcja zaoszczędziła wiele mojego czasu.

EDIT: Nie trzeba ReSharper teraz ponieważ Visual Studio 2017 ma podobną funkcjonalność - Visual Studio 2017 can automatically recommend NuGet packages for unknown types.

8

Znalazłem funkcja HtmlDecode w bibliotece WebUtility do pracy.

System.Net.WebUtility.HtmlDecode(string) 
1

Jest to netto Rdzenia 2,0

using System.Text.Encodings.Web; 

i nazywają go:

$"Please confirm your account by <a href='{HtmlEncoder.Default.Encode(link)}'>clicking here</a>.");