В ASP.NET, почему есть UrlEncode () И UrlPathEncode ()?

В недавнем проекте я имел удовольствие устранять ошибку, из-за которой изображения не загружались, когда в имени файла были пробелы. Я подумал: "Какой простой вопрос, я будуUrlEncode() это! ", но, нет! просто с помощьюUrlEncode() не решил проблему.

Новая проблема былаHttpUtilities.UrlEncode() метод переключаемых пробелов () к плюсам (+) вместо из%20 как хотел браузер. Такfile+image+name.jpg вернется не найденfile%20image%20name.jpg был найден правильно.

К счастью, коллега указалHttpUtilities.UrlPathEncode() для меня, который использует%20 для пробелов вместо+.

ПОЧЕМУ есть два способа обработки Url-кодирования? ПОЧЕМУ есть две команды, которые ведут себя так по-разному?

Ответы на вопрос(2)

Ваш ответ на вопрос