将事件从WCF服务引发到使用dll

时间:2010-12-06 07:33:56

标签: c# events dll

您好
虽然这很简单,但我不知道怎么做 我正在尝试将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 我做错了什么,有没有其他方法可以做到这一点? 感谢。

1 个答案:

答案 0 :(得分:0)

有两种基本方法可以做到这一点:

1。)您可以在客户端应用程序中自行托管WCF服务,并在对服务器的调用中传递客户端计算机的IP地址。然后,服务器可以构建代理,并在想要向其发送事件时回调客户端

2.。)您可以经常从服务器轮询事件。为每个客户端提供服务响应中的标识符,然后他们可以经常使用该标识符调用服务器。您可以在服务器端使用缓存来存储未传递事件的列表,然后当客户端点击该链接时,您将返回客户端最早的事件。