আমাকে .NET কোর (এমভিসি 6) এ এইচটিএমএল অক্ষরগুলি ডিকোড করতে হবে। দেখে মনে হচ্ছে। নেট কোরের ওয়েব ইউটিলিটি নেই H এইচটিএমএল ডিকোড ফাংশন যা প্রত্যেকে সেই উদ্দেশ্যে আগে ব্যবহার করেছিল। .NET কোর একটি প্রতিস্থাপন আছে?
আমাকে .NET কোর (এমভিসি 6) এ এইচটিএমএল অক্ষরগুলি ডিকোড করতে হবে। দেখে মনে হচ্ছে। নেট কোরের ওয়েব ইউটিলিটি নেই H এইচটিএমএল ডিকোড ফাংশন যা প্রত্যেকে সেই উদ্দেশ্যে আগে ব্যবহার করেছিল। .NET কোর একটি প্রতিস্থাপন আছে?
উত্তর:
এটি সিস্টেম.নেট.ওয়েব ইউটিলিটি ক্লাসে রয়েছে (যেহেতু। নেট স্ট্যান্ডার্ড 1.0):
//
// 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);
}
এটি নেট কোর ২.০ এ রয়েছে
using System.Text.Encodings.Web;
এবং এটি কল:
$"Please confirm your account by <a href='{HtmlEncoder.Default.Encode(link)}'>clicking here</a>.");
আপডেট : এছাড়াও নেট কোর 2.1 এ:
using System.Web;
HttpUtility.UrlEncode(code)
HttpUtility.UrlDecode(code)
আপনার রেফারেন্স যুক্ত করা দরকার System.Net.WebUtility
।
এটি ইতিমধ্যে। নেট কোর 2 ( Microsoft.AspNetCore.All
) এ অন্তর্ভুক্ত রয়েছে
অথবা আপনি নিউগেট থেকে ইনস্টল করতে পারেন -। নেট কোর 1 এর জন্য পূর্বরূপ সংস্করণ।
সুতরাং উদাহরণস্বরূপ, আপনার কোড নীচের মত দেখতে হবে
public static string HtmlDecode(this string value)
{
value = System.Net.WebUtility.HtmlDecode(value);
return value;
}
WebUtility.HtmlDecode
এটি কোনও এক্সটেনশন পদ্ধতিতে মোড়ানোর কোনও কারণ নেই ...
namespace System.Web
{
//
// Summary:
// Provides methods for encoding and decoding URLs when processing Web requests.
// This class cannot be inherited.
public sealed class HttpUtility
{
public HttpUtility();
public static string HtmlAttributeEncode(string s);
public static void HtmlAttributeEncode(string s, TextWriter output);
public static string HtmlDecode(string s);
public static void HtmlDecode(string s, TextWriter output);
public static string HtmlEncode(string s);
public static string HtmlEncode(object value);
public static void HtmlEncode(string s, TextWriter output);
public static string JavaScriptStringEncode(string value);
public static string JavaScriptStringEncode(string value, bool addDoubleQuotes);
public static NameValueCollection ParseQueryString(string query);
public static NameValueCollection ParseQueryString(string query, Encoding encoding);
public static string UrlDecode(string str, Encoding e);
public static string UrlDecode(byte[] bytes, int offset, int count, Encoding e);
public static string UrlDecode(string str);
public static string UrlDecode(byte[] bytes, Encoding e);
public static byte[] UrlDecodeToBytes(byte[] bytes, int offset, int count);
public static byte[] UrlDecodeToBytes(string str, Encoding e);
public static byte[] UrlDecodeToBytes(byte[] bytes);
public static byte[] UrlDecodeToBytes(string str);
public static string UrlEncode(string str);
public static string UrlEncode(string str, Encoding e);
public static string UrlEncode(byte[] bytes);
public static string UrlEncode(byte[] bytes, int offset, int count);
public static byte[] UrlEncodeToBytes(string str);
public static byte[] UrlEncodeToBytes(byte[] bytes);
public static byte[] UrlEncodeToBytes(string str, Encoding e);
public static byte[] UrlEncodeToBytes(byte[] bytes, int offset, int count);
[Obsolete("This method produces non-standards-compliant output and has interoperability issues. The preferred alternative is UrlEncode(String).")]
public static string UrlEncodeUnicode(string str);
[Obsolete("This method produces non-standards-compliant output and has interoperability issues. The preferred alternative is UrlEncodeToBytes(String).")]
public static byte[] UrlEncodeUnicodeToBytes(string str);
public static string UrlPathEncode(string str);
}
}
ডিকোডিং বা এনকোডিংয়ের জন্য আপনি HttpUtility
ক্লাস ইন ব্যবহার করতে পারেন .net core
।
আশা করি এটি কার্যকর হবে
HtmlDecode
এবং বেশিরভাগ *Decode
পদ্ধতিটি কোরএফএক্সে পোর্ট করা হয়নি। শুধুমাত্র *Encode
পদ্ধতি উপলব্ধ।
আজ যা উপলভ্য তা এখানে রয়েছে: https://github.com/dotnet/corefx/blob/1dfe38aeb2811fbbd6d4de36d210f060e80d50a6/src/System.Text.Encodings.Web/src/System/Text/Encodings/mle/HoderCsss