您好
虽然这很简单,但我不知道怎么做
我正在尝试将dll签署给服务器端发生的事件
客户端有一个这个DLL的实例,他们必须从服务器接收通知
在我定义的服务上(c#):
public delegate ActionResult ActionComplitedHandler(object sender,ActionComplitedEventArgs e);
public event ActionComplitedHandler ActionComplited;
public void OnActionComplited(ActionResult actionResult)
{
if (ActionComplited != null)
{
ActionComplitedEventArgs args = new ActionComplitedEventArgs();
args.ActionResult = actionResult;
ActionComplited(this, args);
}
}
但是在尝试签署dll时,我无法看到它。
mySeriveInstance.ActionComplited+=... //(I don't get the eventHandler after the dot)
我不想使用WCF回调 WCF服务实例是Single 我做错了什么,有没有其他方法可以做到这一点? 感谢。
答案 0 :(得分:0)
有两种基本方法可以做到这一点:
1。)您可以在客户端应用程序中自行托管WCF服务,并在对服务器的调用中传递客户端计算机的IP地址。然后,服务器可以构建代理,并在想要向其发送事件时回调客户端
2.。)您可以经常从服务器轮询事件。为每个客户端提供服务响应中的标识符,然后他们可以经常使用该标识符调用服务器。您可以在服务器端使用缓存来存储未传递事件的列表,然后当客户端点击该链接时,您将返回客户端最早的事件。