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

  • DominicFear

    DominicFear

    30 Kasım 2006
  • humanHardDrive

    humanHardDri

    16 Mart 2011
  • Within Temptation

    Within Tempt

    18 EYLÜL 2006