在asmx webservice中,我使用c#类库项目将web引用添加到项目中,该项目在服务中公开WebMethods,有多个方法名称,例如,
在我的服务中,我有一个名为GetCategories
的网络方法,但智能感知也显示GetCategoriesAsync
这是对同一webmethod的异步调用吗?如果是这样,我怎么能调用这个异步方法的任何例子?
答案 0 :(得分:1)
您可以像调用常规方法一样调用方法,还应该为方法完成事件注册一个函数,以便在响应时可以继续进程。
这是我找到的一个例子
protected void Button1_Click
(object sender, EventArgs e)
{
BookSupplier1.WebService1 supplier1 = new BookSupplier1.WebService1();
supplier1.GetCostCompleted += new BookSupplier1.GetCostCompletedEventHandler(supplier1_GetCostCompleted);
supplier1.GetCostAsync(TextBox1.Text, BulletedList1);
}
void supplier1_GetCostCompleted(object sender, BookSupplier1.GetCostCompletedEventArgs e)
{
if (e.Error != null)
{
throw e.Error;
}
BulletedList list = (BulletedList)e.UserState;
list.Items.Add("Quote from BookSupplier1 : " + e.Result.ToString("C"));
}