powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / HttpValueCollection -- чито за фигня?
25 сообщений из 59, страница 1 из 3
HttpValueCollection -- чито за фигня?
    #38422462
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему единственный нативный класс для построения Query String для URL — internal?
есть идеи, почему так?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422559
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttединственный нативный класс для построения Query String для URL
Убей себя об стену, двоечник.

Код: c#
1.
2.
var query1 = HttpUtility.ParseQueryString(url);
var query2 = new Uri(url).Query;



Сегодня опять двойка.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422569
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

HttpUtility.ParseQueryString(url); -- это понятно, мы получим экземпляр этого класса под видом NameValueCollection.

но почему класс internal? зачем скрывать?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422572
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и что тут такого... иногда логику архытэкторов ну не понять.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
    /// <summary>
    ///  NameValueCollection to represent form data and to generate form data output.
    /// </summary>
    [Serializable]
    internal class HttpValueCollection : NameValueCollection
    {
        private HttpValueCollection()
            : base(StringComparer.OrdinalIgnoreCase) // case-insensitive keys
        {
        }

        // Use a builder function instead of a ctor to avoid virtual calls from the ctor. 
        public static NameValueCollection Create()
        {
            return new HttpValueCollection();
        }

        public static NameValueCollection Create(IEnumerable<KeyValuePair<string, string>> pairs)
        {
            var nvc = new HttpValueCollection();

            // Ordering example:
            //   k=A&j=B&k=C --> k:[A,C];j=[B].
            foreach (KeyValuePair<string, string> kv in pairs)
            {
                ThrowIfMaxHttpCollectionKeysExceeded(nvc.Count);

                string key = kv.Key;
                if (key == null)
                {
                    key = String.Empty;
                }
                string value = kv.Value;
                if (value == null)
                {
                    value = String.Empty;
                }
                nvc.Add(key, value);
            }

            nvc.IsReadOnly = false;
            return nvc;
        }

        private static void ThrowIfMaxHttpCollectionKeysExceeded(int count)
        {
            if (count >= MediaTypeFormatter.MaxHttpCollectionKeys)
            {
                throw Error.InvalidOperation(System.Net.Http.Properties.Resources.MaxHttpCollectionKeyLimitReached, MediaTypeFormatter.MaxHttpCollectionKeys, typeof(MediaTypeFormatter));
            }
        }

        protected HttpValueCollection(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
        }

        public override string ToString()
        {
            return ToString(true);
        }

        private string ToString(bool urlEncode)
        {
            if (Count == 0)
            {
                return String.Empty;
            }

            StringBuilder builder = new StringBuilder();
            bool first = true;
            foreach (string name in this)
            {
                string[] values = GetValues(name);
                if (values == null || values.Length == 0)
                {
                    first = AppendNameValuePair(builder, first, urlEncode, name, String.Empty);
                }
                else
                {
                    foreach (string value in values)
                    {
                        first = AppendNameValuePair(builder, first, urlEncode, name, value);
                    }
                }
            }

            return builder.ToString();
        }

        private static bool AppendNameValuePair(StringBuilder builder, bool first, bool urlEncode, string name, string value)
        {
            string effectiveName = name ?? String.Empty;
            string encodedName = urlEncode ? UriQueryUtility.UrlEncode(effectiveName) : effectiveName;

            string effectiveValue = value ?? String.Empty;
            string encodedValue = urlEncode ? UriQueryUtility.UrlEncode(effectiveValue) : effectiveValue;

            if (first)
            {
                first = false;
            }
            else
            {
                builder.Append("&");
            }

            builder.Append(encodedName);
            if (!String.IsNullOrEmpty(encodedValue))
            {
                builder.Append("=");
                builder.Append(encodedValue);
            }
            return first;
        }
    }
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422580
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и кроме того, HttpUtility медленно катится в стадию deprecated
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422598
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttно почему класс internal? зачем скрывать?
Без понятия. Если нужно добавить пары, есть грязный хак: http://codearticles.ru/articles/165
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422599
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttи кроме того, HttpUtility медленно катится в стадию deprecated
Откуда информация?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422601
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhVosttно почему класс internal? зачем скрывать?
Без понятия. Если нужно добавить пары, есть грязный хак: http://codearticles.ru/articles/165

жуть какая...
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422602
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttжуть какая...
В чем суть проблемы? Я тебе дал 2 способа, как нативно можно построить URL.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422604
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhVosttи кроме того, HttpUtility медленно катится в стадию deprecated
Откуда информация?

вообщет это касается System.Web, куда попадает HttpUtility
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422611
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвообщет это касается System.Web, куда попадает HttpUtility
Мне срать на то, чего это касается. Почему этот класс "медленно катится в стадию deprecated"?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422613
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhVosttжуть какая...
В чем суть проблемы? Я тебе дал 2 способа, как нативно можно построить URL.

да и без тебя эти способы знаем. просто нужен класс построителя Query как тип, а не как инстанс, за выдачу которого надо кому-то отвечать. вообще много изучал чужого кода, в том числе в большущих проектах, как только не извращаются, чтобы построить злополучный Query. я считаю, это кто-то когда-то согрешил с этим internal. может думал, кто-то знает, была ли веская причина. видимо нет.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422615
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttда и без тебя эти способы знаем.
А врать-то не надо. Ты ляпнул глупость про "единственный нативный класс для построения query" - а я тебе доказал, что ты бестолочь. Я прав?

hVosttпросто нужен класс построителя Query как тип, а не как инстанс, за выдачу которого надо кому-то отвечать.
Чё? Какой "не инстанс"? Ты что там у себя куришь?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422619
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУА врать-то не надо. Ты ляпнул глупость про "единственный нативный класс для построения query" - а я тебе доказал, что ты бестолочь. Я прав?

ээ.. чего? покажи какой-нибудь ещё класс? я пока увидел парочку методов. где классы?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422622
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

при чем эти методы возвращают сабжевый класс. ты ничего не доказал. кроме того, что показал, что хотел чего-то доказать, только не понятно что.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422624
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttээ.. чего? покажи какой-нибудь ещё класс? я пока увидел парочку методов. где классы?
Твоя тупость меня ставит в тупик... Вот эти классы: HttpUtility и Uri.

hVosttМСУ, при чем эти методы возвращают сабжевый класс. ты ничего не доказал. кроме того, что показал, что хотел чего-то доказать, только не понятно что.
Ты точно что-то куришь... Может, яду?
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422625
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУПочему этот класс "медленно катится в стадию deprecated"?

ну дык, не надо оф. сообщений, чтобы это понять. читай чейнджлог репы вебстека.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422629
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУТвоя тупость меня ставит в тупик... Вот эти классы: HttpUtility и Uri.

выйди пожалуйста и закрой за собой дверь. эти классы для построения Query String делают одно и тоже, создают инстанс HttpValueCollection -- а про него я уже написал. ты упоротый чтоли? ну хватит уже, а.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422630
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУПочему этот класс "медленно катится в стадию deprecated"?
ну дык, не надо оф. сообщений, чтобы это понять. читай чейнджлог репы вебстека.
Опять ты пишешь очередную бредятину, за которую даже ответить не можешь... Ты хочешь сказать, что System.Web устарел? Откуда такая информация?

Чем дальше жмешь на пульсирующий мозг хвоста, тем больше желчи и напалма льется в форум.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422633
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУТвоя тупость меня ставит в тупик... Вот эти классы: HttpUtility и Uri.
выйди пожалуйста и закрой за собой дверь. эти классы для построения Query String делают одно и тоже, создают инстанс HttpValueCollection -- а про него я уже написал. ты упоротый чтоли? ну хватит уже, а.
Дверь пока рано закрывать. Нужно между дверьми зажать твою голову и размять твой гнилой моск. Где ты там в классе Uri увидел "создание инстанса HttpValueCollection"? Убейся об яд, чудик
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422636
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУТы хочешь сказать, что System.Web устарел?

нет. не придумывай. я сказал "катится". информация много откуда, репа, мнение людей, общение с разрабами на стеке. если ты живешь только новостными заголовками, мне это до фанаря. значит жди официальных сообщений, и отстань от меня.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422640
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУДверь пока рано закрывать

состряпай Query String из следующей коллекции:

var args = new Dictionary<string, string> { { "par1", "val1" }, { "par2", "val2 ?!*<>hehey" } };

нативно.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422641
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И не выкручивайся, суть твоего гавнопоста была в том, как строить Query. Поэтому ты начал ныть о том, что HttpValueCollection закрыт для добавления параметров. Я же тебе объяснил, что не нужно врукопашную работать с HttpValueCollection (можно, но только через хак), нужно использовать HttpUtility или честный Uri. Отсюда вытекает постулат о том, что HttpValueCollection - это готовый выхлоп построения URL, но никак не класс для создания URL. Сечешь фишку? А теперь шагом марш за ядом.
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422643
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУИ не выкручивайся, суть твоего гавнопоста была в том, как строить Query. Поэтому ты начал ныть о том, что HttpValueCollection закрыт для добавления параметров. Я же тебе объяснил, что не нужно врукопашную работать с HttpValueCollection (можно, но только через хак), нужно использовать HttpUtility или честный Uri. Отсюда вытекает постулат о том, что HttpValueCollection - это готовый выхлоп построения URL, но никак не класс для создания URL. Сечешь фишку? А теперь шагом марш за ядом.

окееей...
...
Рейтинг: 0 / 0
HttpValueCollection -- чито за фигня?
    #38422648
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУДверь пока рано закрывать

состряпай Query String из следующей коллекции:

var args = new Dictionary<string, string> { { "par1", "val1" }, { "par2", "val2 ?!*<>hehey" } };

нативно.

Держи:

Код: c#
1.
2.
3.
string url = "http://Default.aspx?par1=val1&par2=val2 ?!*<>hehey";
var query1 = HttpUtility.ParseQueryString(url);
var query2 = new Uri(url).Query;



{http%3a%2f%2fDefault.aspx%3fpar1=val1&par2=val2+%3f!*%3c%3ehehey}
"?par1=val1&par2=val2%20?!*%3C%3Ehehey"
...
Рейтинг: 0 / 0
25 сообщений из 59, страница 1 из 3
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / HttpValueCollection -- чито за фигня?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]