Para sa isang .NET Framework application, irehistro ang proxy module sa ilalim ng configuration/system.net/defaultProxy:

<defaultProxy>
  <module type="Company.Network.RoutingProxy, Company.Network" />
</defaultProxy>

Ang unang pangalan ay ang uri at ang pangalawa ay ang pagkakakilanlan ng assembly, hindi isang landas ng DLL. Ang assembly at mga dependency ay dapat mag-load ayon sa normal na mga tuntunin ng application.

Suriin ang dalawang gate. Una, dapat bumuo ang runtime ng pampublikong uri na nagpapatupad ng IWebProxy sa pamamagitan ng constructor na walang parameter. Panatilihin ang panloob na mga exception mula sa mga pagkabigo sa pag-load o pagbuo; nauuna ang mga ito sa anumang proxy TCP na koneksyon. Para sa desktop release, kumpirmahin na ang rehistro ay umabot sa naka-deploy na configuration ng executable. Sa ClickOnce, ihambing ang binuo, na-publish at na-install na .exe.config. Ang App.config ng isang class library ay karaniwang hindi nagna-configure ng host process nito.

Pangalawa, dapat gamitin ng kahilingan ang default na iyon. Ang tahasang pagtatalaga ng proxy ay maaaring pumalit dito, at ang ibang HTTP stack ay maaaring hindi magbasa ng modelong configuration na ito. Sa loob ng module, kailangan ng GetProxy at IsBypassed ng pare-parehong desisyon, na may absolute na proxy URI na gumagamit ng tamang scheme at port.

Gawing pare-pareho rin ang pag-uugali ng mga kredensyal. Ang getter na gumagawa ng hardcoded na account habang binabalewala ang setter nito ay maaaring makagambala sa susunod na configuration kahit na matagumpay ang pag-load.

Ito ay isang mekanismo ng pagpapanatili para sa .NET Framework. Gamitin ang proxy configuration na sinusuportahan ng network client sa kasalukuyang .NET sa halip na asahan na ang legacy system.net registration na ito ay mamamahala sa bawat HttpClient.

Kaugnay na mga artikulo