Supaya layanan Web bisa diakses dari script, itu harus menjadi .asmx web service dimana web service classnya memenuhi kualitas untuk atribut ScriptServiceAttribute.
Metode individual yang dipanggil dari script harus memenuhi kualitas atribut WebMethodAttribute. Sebagai contoh,
[ScriptService]
public class SimpleWebService : System.Web.Services.WebService
{
[WebMethod]
public string EchoInput(String input)
{
// Method code goes here.
}
}
Tambahkan referensi ke WebService yang ada di ScriptManager. Seperti ini,
<asp:ScriptManager runat="server" ID="scriptManager">
<Services>
<asp:ServiceReference
path="~/WebServices/SimpleWebService.asmx" />
</Services>
</asp:ScriptManager>
Harap pastikan bahwa
path anda benar.
Anda harus mengkonfigurasi aplikasi Web untuk mendukung panggilan Web
service dari script. Dalam file web.config untuk aplikasi,
anda harus
menggunakan
ScriptHandlerFactory HTTP handler, yang proses pemanggilannya
dibuat dari script untuk .asmx Web service.
Pemanggilan Web service yang tidak dikeluarkan dari ASP.NET AJAX script,
handler mendelegasikan
panggilan ke
default handler. Contoh berikut menunjukkan elemen Web.config untuk menambahkan handler. Sebagai contoh,
<system.web>
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" type="System.Web.Script.Services.ScriptHandlerFactory" validate="false"/>
</httpHandlers>
<system.web>
Jika Web Service Anda dipanggil
oleh kontrol AJAX Control Toolkit, pastikan parameter anda
harus benar-benar sama dengan definisinya. Sebagai contoh, jika
anda menggunakan AutoComplete,
anda bisa melakukan seperti
di bawah.
[WebMethod]
public string[] GetCompletionList(string prefixText, int count, string contextKey){ } or
[WebMethod]
public string[] GetCompletionList(string prefixText, int count){ }
Agnes Sannie [MSFT]
MSDN Community Support |
Feedback to us
Get or Request Code Sample from Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.