Как стать автором
Обновить

Комментарии 7

Но оправдано, а как бы вы оптимизировали без goto?

Если только в case 9 и 11 прибавлять 0 и повторно прописывать strQuery но это уже ненужное дублирование на мой взгляд.

if (inn.Length == 9 || inn.Length == 11) inn = 0 + inn;

switch(inn.Length) ....

Вместо HttpWebRequest в современном .NET рекомендуется использовать новый класс HttpClient , вот тут подробнее о различиях. Также сразу обращаю внимание, что экземпляр HttpClient лучше переиспользовать.

Также сильно бросается в глаза множество неочевидных условий в ProxyClass : я бы предложил заняться рефакторингом, чтобы уменьшить вложенность кода, а также переименовать поля и переменные, чтобы не требовалось читать комментарии для понимания происходящего.

Про goto выше уже написали. Я бы не стал экономить на строках кода, и выделил бы отдельный метод, например private string EnsureTrailingZero(string rawInn), который бы инкапсулировал логику проверки "утерянного" нуля в начале.

У Федресурса же API есть официальный и, в отличие от многих других, за вполне разумный ценник (пару лет назад было, ЕМНИП, 48 т.р. в год). За пулы прокси как бы дороже не вышло платить :)

Так пул можно не на одном федресурсе использовать. А вообще печаль, теперь там наверняка все позакрывают и проверок натыкают, наш модуль для своей системки отсохнет

Пул для других ресурсов пригодится, где всё гораздо печальнее :) А тут просто сумма незначительная, комплект ЕГРЮЛ+ЕГРИП от ФНС, который всё равно нужен как самый базовый источник данных, обходится в 6 раз дороже.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории