我们计划为 Zkteco SDK 中提供的方法开发 ASP.Net Web 服务。
其中一个 Web 服务是连接到设备。调用"Connect_Net(字符串 IPAdd, int Port("方法后,连接成功,同样在该方法中,我们注册了一些事件,如下所示:
public bool Connect_Net(string IPAdd, int Port)
{
if (objCZKEM.Connect_Net(IPAdd, Port))
{
//65535, 32767
if (objCZKEM.RegEvent(1, 32767))
{
// [ Register your events here ]
// [ Go through the _IZKEMEvents_Event class for a complete list of events
objCZKEM.OnConnected += ObjCZKEM_OnConnected;
objCZKEM.OnDisConnected += objCZKEM_OnDisConnected;
//objCZKEM.OnEnrollFinger += ObjCZKEM_OnEnrollFinger;
objCZKEM.OnEnrollFingerEx += new _IZKEMEvents_OnEnrollFingerExEventHandler(ObjCZKEM_OnEnrollFingerEx);
objCZKEM.OnNewUser += ObjCZKEM_OnNewUser;
objCZKEM.OnFinger += ObjCZKEM_OnFinger;
//this.objCZKEM.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(ObjCZKEM_OnVerify);
objCZKEM.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(zkemClient_OnAttTransactionEx);
}
return true;
}
return false;
}
但是在连接后,这些事件(OnEnrollFinger,On Clock-In等(不会在 ASP.NET Web服务中被调用。
类似的侦听器在 Windows 窗体应用程序中工作正常。
您能否就如何解决此问题提供建议?,上述事件是否应该在后台线程中注册?如果是,那么该怎么做?
谢谢
就我而言,我在Windows表单应用程序中执行此操作,然后将数据传递到Web API