0
是否可以使用WCF的CallbackContract或WCF从Asp.Net Ajax控件/页面提供的任何其他“远程事件”机制?Asp.Net使用带有CallbackContract的WCF服务的Ajax控件
到目前为止,我发现的所有文章都是从Asp.Net页面分别处理CallbackContracts和WCF的用法。 有没有办法让服务的回调回到发起呼叫的页面?
非常感谢。
是否可以使用WCF的CallbackContract或WCF从Asp.Net Ajax控件/页面提供的任何其他“远程事件”机制?Asp.Net使用带有CallbackContract的WCF服务的Ajax控件
到目前为止,我发现的所有文章都是从Asp.Net页面分别处理CallbackContracts和WCF的用法。 有没有办法让服务的回调回到发起呼叫的页面?
非常感谢。
是的,当然。如果你只想用一个回调函数(Duplex)调用一个wcf服务,你可以像往常一样在脚本方法中完成。
编辑: 我不知道你与Ajax有什么关系,但是,假设你想建议用户使用来自WCF服务的数据来填充带有AutoCompleteExtender的文本框,你必须提供一个ScriptMethod。它里面你可以调用通常的方式将服务作为MSDN
[WebMethod, ScriptMethod]
public static string[] GetSuggestedItems(string prefixText, int count)
{
// Construct InstanceContext to handle messages on callback interface
InstanceContext instanceContext = new InstanceContext(new MyCallbackHandler());
// Create a client
MyDuplexClient client = new MyDuplexClient(instanceContext);
return client.GetModelItems(prefixText).GetRange(0, count);
}
解释说,一旦你定义的回调处理程序:
public class MyCallbackHandler : IMyCallbackContract
{
....
}
感谢您的答复。你可以分享一些代码示例,因为我对WCF和Ajax都相对陌生吗? – Konrad 2010-08-04 11:10:17
我编辑了我的答案 – onof 2010-08-04 12:07:36