Вложенный класс является очень общим термином: каждый класс, который не является верхним, представляет собой вложенный класс. Внутренний класс - это нестатический вложенный класс. Джозеф Дарси написал очень приятное объяснение о Nested, Inner, Member и Top-Level Classes .
Я не парень.NET, но, не можете Вы использовать:
HttpUtility.UrlEncode Method (String)
, Который описан здесь:
Вы захотите использовать
System.Web.HttpUtility.urlencode("url")
, Удостоверяются, что у Вас есть system.web как одна из ссылок в Вашем проекте. Я не думаю, что это включено как ссылка по умолчанию в консольных приложениях.
Попытайтесь использовать метод UrlEncode в классе HttpUtility.
Я столкнулся с этой проблемой сам, и а не добавьте Систему. Веб-блок к моему проекту, я записал класс для кодирования/декодирования URL (его довольно простое, и я сделал некоторое тестирование, но не много). Я включал исходный код ниже.: оставьте комментарий наверху при многократном использовании этого не обвиняйте меня, если он повреждается, извлеките уроки из кода.
''' <summary>
''' URL encoding class. Note: use at your own risk.
''' Written by: Ian Hopkins (http://www.lucidhelix.com)
''' Date: 2008-Dec-23
''' </summary>
Public Class UrlHelper
Public Shared Function Encode(ByVal str As String) As String
Dim charClass = String.Format("0-9a-zA-Z{0}", Regex.Escape("-_.!~*'()"))
Dim pattern = String.Format("[^{0}]", charClass)
Dim evaluator As New MatchEvaluator(AddressOf EncodeEvaluator)
' replace the encoded characters
Return Regex.Replace(str, pattern, evaluator)
End Function
Private Shared Function EncodeEvaluator(ByVal match As Match) As String
' Replace the " "s with "+"s
If (match.Value = " ") Then
Return "+"
End If
Return String.Format("%{0:X2}", Convert.ToInt32(match.Value.Chars(0)))
End Function
Public Shared Function Decode(ByVal str As String) As String
Dim evaluator As New MatchEvaluator(AddressOf DecodeEvaluator)
' Replace the "+"s with " "s
str = str.Replace("+"c, " "c)
' Replace the encoded characters
Return Regex.Replace(str, "%[0-9a-zA-Z][0-9a-zA-Z]", evaluator)
End Function
Private Shared Function DecodeEvaluator(ByVal match As Match) As String
Return "" + Convert.ToChar(Integer.Parse(match.Value.Substring(1), System.Globalization.NumberStyles.HexNumber))
End Function
End Class
Kibbee предлагает реальный ответ. Да, HttpUtility. UrlEncode является правильным методом для использования, но это не будет доступно по умолчанию для консольного приложения. Вы должны добавлять ссылку на Систему. Сеть. Чтобы сделать это,
ТЕПЕРЬ, можно использовать метод UrlEncode. Вы все еще захотите добавить,
Система использования. Сеть
наверху Вашего консольного приложения или использования полное пространство имен при вызове метода,
Система. Сеть. HttpUtility. UrlEncode (someString)
HttpUtility. UrlEncode ("URL") в Системе. Сеть.
используйте статический HttpUtility. Метод UrlEncode.