}
public bool IsReusable {
get
{
return false;
}
}
[MyRpcService]
public string Hello()
{
return "instance
Hello!";
}
[MyRpcService]
static public string Hello2()
{
return "static
Hello2!";
}
}
上述例子说明的是客户访问服务器端方法的的数据交换过程,真实应用中,开发包应该实现javascript代理访问机制,请求和返回数据一般都采用JSON,使用起来比较快捷。
greetings真实的数据交互过程:
1. 通过代理类访问(参考前面源码)
2. 请求:,
POST
DATA:{"id":1,"method":"greetings","params":[]}
3. 返回数据:{"id":1,"result":"Welcome
to Jayrock!"}
可以看到,交互数据都是JSON的格式。JSON的序列化反序列化有javascript的开源支持,也有C#的开源支持。网站中都可以到。
通过对使用方式和数据交换拦截观察,个人认为,关于远程调用,ASP.NET AJAX 和 Jayrock
的实现,原理应该差不多,只是细节实现上的区别吧。
2006-12-5
Sam sha