你能告诉我为什么Hub-classes中的名字在CamelCase中,但是在客户端js-code中它是在lowerCamelCase中?为什么我不能通过MyHub.server.Hello
从MyHub类中调用Hello-method?
我的意思是将后端方法称为精确的c#-names会更清楚,不是吗?除了代码式协议之外,重命名还有其他任何意义吗?
我希望我的问题很清楚。
在script.js中:
$(function() {
var hub = $.connection.myHub;
hub.client.hello = function (message) { //why not hub.client.Hello ?
alert(message);
}
$("#btn").click(function(){
hub.server.hello(); //why not hub.server.Hello() ??
});
});
在MyHub级:
public class MyHub : Hub
{
public void Hello()
{
Clients.All.hello(); //why not Clients.All.Hello() ?
}
}
这是由于命名约定和SignalR代理代码。
JavaScript是一种区分大小写的语言,正如Dotnet建议的CamelCasing。在服务器端调用方法会通过javascript中的代理代码。
Javascript通常使用camelCase
命名约定方法名称,.net生态系统通常使用PascalCase
。 Javascript和一些.net语言区分大小写。