Bagikan melalui


Membuat Proksi Layanan Web

Klien dan layanan Web dapat berkomunikasi menggunakan pesan SOAP, yang merangkum parameter input dan output sebagai XML. Kelas proksi memetakan parameter ke elemen XML lalu mengirim pesan SOAP melalui jaringan. Dengan cara ini, kelas proksi membebaskan Anda dari harus berkomunikasi dengan layanan Web di tingkat SOAP dan memungkinkan Anda untuk memanggil metode layanan Web di lingkungan pengembangan apa pun yang mendukung proksi layanan SOAP dan Web.

Ada dua cara untuk menambahkan kelas proksi ke proyek pengembangan Anda menggunakan microsoft .NET Framework: dengan alat WSDL di .NET Framework, dan dengan menambahkan referensi Web di Microsoft Visual Studio. Bagian berikut membahas subjek ini secara lebih rinci.

Menambahkan Proksi Menggunakan Alat WSDL

SDK .NET Framework menyertakan alat Web Services Description Language (Wsdl.exe), yang memungkinkan Anda membuat proksi layanan Web untuk digunakan di lingkungan pengembangan .NET Framework. Cara paling umum untuk membuat proksi klien dalam bahasa yang mendukung layanan Web (saat ini C# dan Microsoft Visual Basic) adalah dengan menggunakan alat WSDL.

Untuk menambahkan kelas proksi ke proyek Anda menggunakan Wsdl.exe

  1. Dari prompt perintah, gunakan Wsdl.exe untuk membuat kelas proksi, menentukan (minimal) URL ke layanan Web Server Laporan.

    Misalnya, pernyataan prompt perintah berikut menentukan URL untuk titik akhir manajemen layanan Web Server Laporan:

    wsdl /language:CS /n:"Microsoft.SqlServer.ReportingServices2010" https://<Server Name>/reportserver/reportservice2010.asmx?wsdl  
    

    Alat WSDL menerima sejumlah argumen command-prompt untuk menghasilkan proksi. Contoh sebelumnya menentukan bahasa C#, namespace yang disarankan untuk digunakan dalam proksi (untuk mencegah tabrakan nama jika menggunakan lebih dari satu titik akhir layanan Web), dan menghasilkan file C# yang disebut ReportingService2010.cs. Jika contoh telah menentukan Visual Basic, contohnya akan menghasilkan file proksi dengan nama ReportingService2010.vb. File ini dibuat di direktori tempat Anda menjalankan perintah.

  2. Kompilasi kelas proksi ke dalam file assembly (dengan ekstensi .dll) dan referensikan di proyek Anda, atau tambahkan kelas sebagai item proyek.

    Catatan

    Saat menambahkan kelas proksi ke proyek secara manual, Anda perlu menambahkan referensi ke System.Web.Services.dll. Jika Anda menambahkan proksi menggunakan referensi Web di Visual Studio .NET, referensi secara otomatis dibuat untuk Anda. Untuk informasi selengkapnya, lihat "Menambahkan Proksi Menggunakan Referensi Web di Visual Studio" nanti dalam topik ini.

    Setelah Anda menambahkan kelas proksi sebagai item ke proyek Anda, file terkait muncul di Penjelajah Solusi.

  3. Untuk memanggil layanan secara terprogram, buat instans kelas proksi.

    Contoh kode berikut menunjukkan sintaks untuk membuat instans ReportingService2010 kelas proksi dalam proyek:

Dim service As New ReportingService2010()  
ReportingService2010 service = new ReportingService2010();  
  

Untuk informasi selengkapnya tentang alat Wsdl.exe, termasuk sintaks lengkapnya, lihat "Alat Bahasa Deskripsi Layanan Web" dalam dokumentasi SDK .NET Framework. Untuk penjelasan lengkap tentang proksi layanan Web, lihat "Membuat Proksi Layanan Web XML" dalam dokumentasi SDK .NET Framework.

Menambahkan Proksi Menggunakan Referensi Web di Visual Studio

Referensi Web memungkinkan proyek untuk menggunakan satu atau beberapa layanan Web. Visual Studio memungkinkan pengguna untuk menambahkan referensi layanan Web ke proyek dengan mengikuti beberapa langkah sederhana.

Untuk menambahkan referensi Web ke proyek

  1. Di Penjelajah Solusi, pilih proyek yang akan menggunakan layanan Web.

  2. Pada menu Proyek , klik Tambahkan Referensi Web.

    Kotak dialog Tambahkan Referensi Web terbuka.

  3. Di bidang URL , masukkan jalur lengkap ke layanan Web Server Laporan.

    URL yang disederhanakan untuk titik akhir eksekusi laporan layanan Web Server Laporan mungkin terlihat seperti ini:

    https://<Server Name>/reportserver/reportexecution2005.asmx  
    

    URL berisi domain tempat layanan Web Server Laporan disebarkan, nama folder yang berisi layanan, dan nama file penemuan untuk layanan. Untuk deskripsi lengkap tentang elemen URL yang berbeda, lihat Mengakses SOAP API.

    Deskripsi metode dan properti yang disediakan oleh layanan Web muncul di panel Browser di sebelah kiri.

    Catatan

    Untuk informasi selengkapnya tentang item yang terkait dengan layanan Web Server Laporan, lihat Metode Layanan Web Server Laporan.

  4. Verifikasi bahwa proyek Anda bisa menggunakan layanan Web Server Laporan, dan Anda memiliki izin yang sesuai untuk mengakses server laporan.

  5. Di bidang Nama referensi web , masukkan nama yang akan Anda gunakan dalam kode Anda untuk mengakses layanan Web Server Laporan secara terprogram.

  6. Pilih tombol Tambahkan Referensi untuk membuat referensi di aplikasi Anda ke layanan Web.

    Referensi baru muncul di Penjelajah Solusi di bawah simpul Referensi Web untuk proyek aktif, bernama seperti yang ditentukan di bidang Nama referensi web.

  7. Di Penjelajah Solusi, perluas folder Referensi Web untuk mencatat namespace layanan untuk kelas referensi Web yang tersedia untuk item dalam proyek Anda.

    Setelah menambahkan referensi Web ke proyek Anda, file terkait ditampilkan dalam folder dalam folder Referensi Web Penjelajah Solusi.

Setelah Anda menambahkan referensi Web, gunakan sintaks berikut untuk membuat instans kelas proksi:

Dim rs As New myNamespace.myReferenceName.ReportExecutionService()  
rs.Url = "https://<Server Name>/reportserver/reportexecution2005.asmx?wsdl"  
rs.Credentials = System.Net.CredentialCache.DefaultCredentials  
myNamespace.myReferenceName.ReportExecutionService rs = new myNamespace.myReferenceName.ReportExecutionService();  
rs.Url = "https://<Server Name>/reportserver/reportexecution2005.asmx?wsdl";  
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  
  

Anda juga bisa menambahkan arahan menggunakan (Impor di Visual Basic) ke referensi layanan Web Server Laporan. Jika Anda menggunakan direktif ini, Anda tidak perlu sepenuhnya memenuhi syarat jenis di namespace layanan. Untuk melakukan ini, tambahkan kode berikut ke file Anda:

Import myNamespace.myReferenceName  
using myNamespace.myReferenceName;  

Lihat juga

Layanan Web Server Laporan
Membuat Aplikasi Menggunakan Layanan Web dan .NET Framework
Referensi Teknis (SSRS)