Yok C#'In encodeurıcomponent JavaScript için bir eşdeğer var()? | Netgez.com
SORU
17 EYLÜL 2008, ÇARŞAMBA


Yok C#'In encodeurıcomponent JavaScript için bir eşdeğer var()?

JavaScript:

encodeURIComponent("©√") == "©√"

C için bir eşdeğerdir# uygulamalar? HTML karakterleri kaçmak için kullandım

txtOut.Text = Regex.Replace(txtIn.Text, @"[\u0080-\uFFFF]",
    m => @"&#"   ((int)m.Value[0]).ToString()   ";");

Ama JS kullanan doğru onaltılık biçime maç dönüştürmek için nasıl emin değilim. Örneğin bu kod:

txtOut.Text = Regex.Replace(txtIn.Text, @"[\u0080-\uFFFF]",
	m => @"%"   String.Format("{0:x}", ((int)m.Value[0])));

Gelirler ""©√" yerine "©√" ©"1a". Dize bayt ya da bir ÅŸey içine ayırmaya ihtiyacım var gibi görünüyor.

Edit: windows uygulaması, sadece öğeleri System.Web mevcut ise: AspNetHostingPermission, AspNetHostingPermissionAttribute AspNetHostingPermissionLevel.

CEVAP
29 Aralık 2010, ÇARŞAMBA


Teknik olarak, ve genellikle uygulamada, oy verdiÄŸim cevap doÄŸru deÄŸildir.

Uri.EscapeUriString HttpUtility.UrlPathEncode bir dize bir URL bir parçası olması gerekiyordu kaçmak için doğru yolu budur.

Örneğin string "Stack Overflow":

  • HttpUtility.UrlEncode("Stack Overflow") -->"Stack Overflow"

  • Uri.EscapeUriString("Stack Overflow") -->"Stack Overflow"

  • Uri.EscapeDataString("Stack Overflow") -->Ayrıca kodlar " " to "+" ---->Stack + Overflow

Tekikincisison URL sorgu dizesi parametrelerini birinin değeri aksine) gerçek bir parçası olarak kullanıldıĞında doğrudur

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • Android Police

    Android Poli

    21 NÄ°SAN 2010
  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • TheSalband Rai

    TheSalband R

    11 NÄ°SAN 2011