Držite ASMX proxy postavke izvan generiranog Reference.cs
Konfigurirajte ASMX klijent usluge kroz njegova javna proxy svojstva i držite potrebno prilagođavanje zahtjeva odvojeno od regeneriranih referentnih datoteka.
Za ASMX klijent koji se temelji na HttpWebClientProtocol .NET Frameworka, konfigurirajte njegov javni Proxy prije prve mrežne operacije:
var service = new ReportsService();
service.Proxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyAccount
};
ReportsService je generirana klasa, a proxyAccount dolazi iz implementacije. SOAP vjerodajnice usluge su odvojene. Ovo dodjeljivanje ne treba ponavljati unutar svake generirane operacije.
Ako se promjena odnosi na temeljnu opciju zahtjeva ili instrumentaciju, upotrijebite nadjačivu GetWebRequest(Uri) naslijeđene osnove. Zadržite odgovarajuću djelomičnu deklaraciju u zasebnoj kompiliranoj datoteci kada je generirana klasa djelomična; u suprotnom odgovarajući izvedeni klijent može pružiti nadjačavanje. Pozovite osnovnu implementaciju i sačuvajte uobičajenu izgradnju zahtjeva.
Taj smještaj preživljava ažuriranje web reference: regeneriranje može zamijeniti ručne izmjene u Reference.cs, dok zasebno održavana proširenja ostaju reproducibilna.
Mijenjajte samo ponašanje zahtjeva koje je doista potrebno. Kopiranje zaobilaznog rješenja KeepAlive može utjecati na ponovnu upotrebu veze i autentifikaciju koja ovisi o stanju veze.
Ovo je model ASMX/.NET Framework. WCF i drugi SOAP stogovi imaju vlastita transportna sučelja. Odaberite podržanu klijentsku postavku prije uvođenja prilagođenog proširenja.