прокси-сервер по умолчанию system.net С# .Net 4

У меня есть код С# (.Net 4), который звонит в Интернет для получения XML-файла, однако при первом попадании в блок кода возникает большая задержка! добавив нижеприведенное в app.conf, проблема будет решена. Однако то, что я хотел бы сделать, это проверить, есть ли прокси-сервер uesd/set, а если нет, то в коде перед каждым вызовом отключите прокси-сервер или обнаружение, вызывающее 20-секундную задержку!

Можно ли это сделать? если да, то как бы я это сделал?

<system.net> 
  <defaultProxy 
    enabled="false" 
    useDefaultCredentials="false" > 
    <proxy/> 
    <bypasslist/> 
    <module/> 
  </defaultProxy> 
</system.net> 

person Adrian    schedule 01.09.2010    source источник


Ответы (2)


WebRequest.DefaultWebProxy = new WebProxy();

Добавление вышеизложенного перед вызовом, похоже, устраняет задержку.

person Adrian    schedule 01.09.2010

Вы можете попробовать что-то вроде этого?

  <system.net>
    <defaultProxy enabled ="false">
      <proxy 
          autoDetect ="True"/>
    </defaultProxy>
  </system.net>
person Iain    schedule 01.09.2010
comment
спасибо, но я пытаюсь отключить прокси в коде С# перед вызовом, а не делать это в app.config. Любая идея, как заменить его в коде? - person Adrian; 01.09.2010
comment
если вы используете класс system.net.webproxy - person Iain; 01.09.2010