WebProxy.UseDefaultCredentials boleh menetapkan semula kelayakan eksplisit
Elakkan penetapan semula akaun proksi .NET eksplisit dengan menetapkan UseDefaultCredentials selepas itu.
Urutan ini kelihatan eksplisit, tetapi dalam .NET 10 ia berakhir tanpa sebarang kelayakan proksi:
proxy.Credentials = new NetworkCredential(proxyUser, proxyPassword);
proxy.UseDefaultCredentials = false;
Dalam pelaksanaan WebProxy .NET 10, menetapkan UseDefaultCredentials kepada false menetapkan null kepada Credentials. Menetapkannya kepada true memilih CredentialCache.DefaultCredentials. Kedua-dua sifat mengawal pilihan akaun yang sama.
Untuk akaun khusus perkhidmatan, tetapkan kelayakan yang dimaksudkan tanpa penetapan semula kemudian:
var proxy = new WebProxy("http://proxy.example.net:8080")
{
Credentials = new NetworkCredential(proxyUser, proxyPassword)
};
Jika kod persediaan sedia ada mesti mematikan kelayakan lalai secara eksplisit, lakukan sebelum menetapkan NetworkCredential. Getter-nya boleh jadi false walaupun kelayakan eksplisit hadir dengan betul; false tidak semestinya bermakna tiada akaun dikonfigurasikan.
Lampirkan objek ini pada pengendali yang melaksanakan permintaan. Untuk pengesahan Windows bersepadu, pilih kelayakan lalai secara sengaja, menggunakan identiti proses yang berkenaan.
Semak susunan penginisialisasi objek dan kaedah pembantu untuk penetapan kemudian yang menggantikan akaun yang dimaksudkan. Ikat diagnosis ini pada pelaksanaan WebProxy yang digunakan; sifat dengan nama sama pada pengendali HTTP boleh mengawal skop pengesahan yang berbeza.