当我尝试从客户端调用服务器端的SendNewOrderConfirmation时,我得到了 “undefined” is not a function 在线聊天.SendNewOrderConfirmation(数据); 有谁知道为什么会这样? 谢谢 在服务器端 public class Dri
“undefined” is not a function
在线聊天.SendNewOrderConfirmation(数据);
有谁知道为什么会这样?
谢谢
在服务器端
public class DriverChat : Hub, IDisconnect { public void Start(Driver d) { ... } public void SendNewOrderConfirmation(OrderDriverData data) { LogFile.LogResponseTime(data.orderId, data.driverId); } }
在客户端
function begin(args) { try { //alert('begin'); chat = $.connection.driverChat; chat.refresh = function () { ready++; }; chat.disconnect = function () { alert('Server has disconnected'); }; $.connection.hub.start(function () { chat.start(args); ready++; // alert('signalR started'); }); } catch (e) { alert(e.message); return e.message; } } function confirmNewOrder(data) { try{ alert('sending cofirmation'); chat.SendNewOrderConfirmation(data); alert('confirmation sent'); } catch (e) { alert(e); } }; }根据您使用的SignalR版本,答案可能会有所不同.
首先,如果您使用的是v1 Alpha之前的版本,那么您的代码应该是;
chat.sendNewOrderConfirmation(data);
注意小写s.
如果您使用的是版本v1 Alpha或更高版本,那么您的代码应该是;
chat.server.sendNewOrderConfirmation(data);