WebClientProtocol Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan kelas dasar untuk semua proksi klien layanan Web XML yang dibuat menggunakan ASP.NET.
public ref class WebClientProtocol abstract : System::ComponentModel::Component
public abstract class WebClientProtocol : System.ComponentModel.Component
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class WebClientProtocol : System.ComponentModel.Component
type WebClientProtocol = class
inherit Component
[<System.Runtime.InteropServices.ComVisible(true)>]
type WebClientProtocol = class
inherit Component
Public MustInherit Class WebClientProtocol
Inherits Component
- Warisan
- Turunan
- Atribut
Contoh
Contoh berikut adalah Formulir Web ASP.NET, yang memanggil layanan Web XML bernama Math
.
EnterBtn_Click
Dalam fungsi , Formulir Web mengatur informasi proksi dan kredensial klien pada kelas proksi sebelum memanggil metode layanan Web XML jarak jauh.
Penting
Contoh ini memiliki kotak teks yang menerima input pengguna, yang merupakan potensi ancaman keamanan. Secara default, ASP.NET halaman Web memvalidasi bahwa input pengguna tidak menyertakan elemen skrip atau HTML. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Net" %>
<html>
<script language="C#" runat="server">
void EnterBtn_Click(Object Src, EventArgs E)
{
MyMath.Math math = new MyMath.Math();
// Set the client-side credentials using the Credentials property.
ICredentials credentials = new NetworkCredential("Joe","mydomain","password");
math.Credentials = credentials;
// Do not allow the server to redirect the request.
math.AllowAutoRedirect = false;
int total = math.Add(Convert.ToInt32(Num1.Text), Convert.ToInt32(Num2.Text));
Total.Text = "Total: " + total.ToString();
}
</script>
<body>
<form action="MathClient.aspx" runat=server>
Enter the two numbers you want to add and then press the Total button.
<p>
Number 1: <asp:textbox id="Num1" runat=server/> +
Number 2: <asp:textbox id="Num2" runat=server/> =
<asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
<p>
<asp:label id="Total" runat=server/>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Net" %>
<html>
<script language="VB" runat="server">
Sub EnterBtn_Click(src As Object, e As EventArgs)
Dim math As New MyMath.Math()
' Set the client-side credentials using the Credentials property.
Dim credentials As New NetworkCredential("Joe", "password", "mydomain")
math.Credentials = credentials
' Do not allow the server to redirect the request.
math.AllowAutoRedirect = False
Dim iTotal As Integer = math.Add(Convert.ToInt32(Num1.Text), Convert.ToInt32(Num2.Text))
Total.Text = "Total: " & iTotal.ToString()
End Sub
</script>
<body>
<form action="MathClient.aspx" runat=server>
Enter the two numbers you want to add and then press the Total button.
<p>
Number 1: <asp:textbox id="Num1" runat=server/> +
Number 2: <asp:textbox id="Num2" runat=server/> =
<asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
<p>
<asp:label id="Total" runat=server/>
</form>
</body>
</html>
Keterangan
Properti WebClientProtocol kelas digunakan untuk mengontrol perilaku transportasi yang digunakan untuk mengirimkan permintaan dan respons layanan Web XML. Properti pada peta kelas ini ke properti yang ditemukan di WebRequest. Instans kelas yang berasal dari WebRequest, seperti HttpWebRequest, digunakan sebagai mekanisme transportasi untuk layanan Web XML yang dibuat menggunakan ASP.NET.
Untuk berkomunikasi dengan layanan Web XML, Anda harus membuat kelas proksi yang berasal secara tidak langsung atau langsung dari WebClientProtocol untuk layanan Web XML yang ingin Anda panggil. Alih-alih membuat kelas proksi secara manual, Anda dapat menggunakan alat Wsdl.exe untuk membuat kelas proksi untuk deskripsi layanan layanan Web XML tertentu. Karena WebClientProtocol adalah kelas dasar untuk proksi klien Anda, Anda akan menemukan propertinya di kelas proksi Anda. Properti ini berguna untuk mengontrol perilaku permintaan dari transportasi yang mendasar. Misalnya, gunakan Credentials properti untuk memanggil layanan Web XML yang diautentikasi. WebClientProtocol Banyak properti yang digunakan untuk menginisialisasi WebRequest objek yang digunakan untuk membuat permintaan Web.
Konstruktor
WebClientProtocol() |
Menginisialisasi instans baru kelas WebClientProtocol. |
Properti
CanRaiseEvents |
Mendapatkan nilai yang menunjukkan apakah komponen dapat menaikkan peristiwa. (Diperoleh dari Component) |
ConnectionGroupName |
Mendapatkan atau mengatur nama grup koneksi untuk permintaan tersebut. |
Container |
IContainer Mendapatkan yang berisi Component. (Diperoleh dari Component) |
Credentials |
Mendapatkan atau mengatur kredensial keamanan untuk autentikasi klien layanan Web XML. |
DesignMode |
Mendapatkan nilai yang menunjukkan apakah Component saat ini dalam mode desain. (Diperoleh dari Component) |
Events |
Mendapatkan daftar penanganan aktivitas yang dilampirkan ke ini Component. (Diperoleh dari Component) |
PreAuthenticate |
Mendapatkan atau mengatur apakah pra-autentikasi diaktifkan. |
RequestEncoding |
yang Encoding digunakan untuk membuat permintaan klien ke layanan Web XML. |
Site |
Mendapatkan atau mengatur ISite dari Component. (Diperoleh dari Component) |
Timeout |
Menunjukkan waktu klien layanan Web XML menunggu balasan permintaan layanan Web XML sinkron tiba (dalam milidetik). |
Url |
Mendapatkan atau mengatur URL dasar layanan Web XML yang diminta klien. |
UseDefaultCredentials |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengatur Credentials properti ke nilai DefaultCredentials properti. |
Metode
Abort() |
Membatalkan permintaan ke metode layanan Web XML. |
AddToCache(Type, Object) |
Tambahkan instans penangan protokol klien ke cache. |
CreateObjRef(Type) |
Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh. (Diperoleh dari MarshalByRefObject) |
Dispose() |
Merilis semua sumber daya yang Componentdigunakan oleh . (Diperoleh dari Component) |
Dispose(Boolean) |
Merilis sumber daya tidak terkelola yang digunakan oleh Component dan secara opsional merilis sumber daya terkelola. (Diperoleh dari Component) |
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
GetFromCache(Type) |
Mendapatkan instans handler protokol klien dari cache. |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetLifetimeService() |
Kedaluwarsa.
Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
GetService(Type) |
Mengembalikan objek yang mewakili layanan yang disediakan oleh Component atau oleh Container. (Diperoleh dari Component) |
GetType() |
Mendapatkan dari instans Type saat ini. (Diperoleh dari Object) |
GetWebRequest(Uri) |
Membuat instans WebRequest untuk yang ditentukan |
GetWebResponse(WebRequest) |
Mengembalikan respons dari permintaan sinkron ke metode layanan Web XML. |
GetWebResponse(WebRequest, IAsyncResult) |
Mengembalikan respons dari permintaan asinkron ke metode layanan Web XML. Metode yang dilindungi ini dipanggil oleh infrastruktur klien layanan Web XML untuk mendapatkan respons dari permintaan layanan Web XML asinkron. |
InitializeLifetimeService() |
Kedaluwarsa.
Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
MemberwiseClone(Boolean) |
Membuat salinan dangkal objek saat ini MarshalByRefObject . (Diperoleh dari MarshalByRefObject) |
ToString() |
Mengembalikan yang String berisi nama Component, jika ada. Metode ini tidak boleh ditimpa. (Diperoleh dari Component) |
Acara
Disposed |
Terjadi ketika komponen dibuang oleh panggilan ke Dispose() metode . (Diperoleh dari Component) |
Berlaku untuk
Keamanan Thread
Properti pada kelas ini disalin ke dalam instans WebRequest baru objek untuk setiap panggilan metode layanan Web XML. Meskipun Anda dapat memanggil metode layanan Web XML pada instans yang sama WebClientProtocol dari utas yang berbeda pada saat yang sama, tidak ada sinkronisasi yang dilakukan untuk memastikan bahwa rekam jepret properti yang konsisten akan ditransfer ke WebRequest objek. Oleh karena itu, jika Anda perlu memodifikasi properti dan melakukan panggilan metode bersamaan dari utas yang berbeda, Anda harus menggunakan instans proksi layanan Web XML yang berbeda atau memberikan sinkronisasi Anda sendiri.