Asynchronous Servicestack异步方法(v4)
目前,我正在开发一个android db访问servicestack web api 当用户与db交互时,我需要显示一条消息“请稍候…”,我阅读了一些文档: 但是我找不到异步方法必须如何在webapi服务器端实现 你能分享一下文档的链接吗?还是一个简单的工作样本 在尝试将其转换为异步调用之前,我已经完成了这项操作Asynchronous Servicestack异步方法(v4),asynchronous,methods,
servicestack,Asynchronous,Methods,
servicestack,目前,我正在开发一个android db访问servicestack web api 当用户与db交互时,我需要显示一条消息“请稍候…”,我阅读了一些文档: 但是我找不到异步方法必须如何在webapi服务器端实现 你能分享一下文档的链接吗?还是一个简单的工作样本 在尝试将其转换为异步调用之前,我已经完成了这项操作 var response = jsonClient.Send(new UsuarioLogin { Cuenta = txtCuenta.Text, P = txtPass.Text
var response = jsonClient.Send(new UsuarioLogin { Cuenta = txtCuenta.Text, P = txtPass.Text});
读取后,后一个代码将转换为:
var response = await jsonClient.SendAsync(new UsuarioLogin { Cuenta = txtCuenta.Text, P = txtPass.Text});
因此,在服务器端我有以下内容(只是摘录):
如何将其转换为异步方法
提前感谢。服务器端和客户端异步是不透明和不相关的,即客户端上的异步调用以相同的方式工作,无论它调用的是同步还是异步服务,同步客户端也没有区别。从本质上讲,服务器的实现方式对它在客户机上的调用方式没有影响 要在服务器上创建异步服务,您只需要返回一个
任务
,您可以查看,以了解如何创建异步服务的不同示例
在客户机上进行非阻塞异步调用有很多好处,因为可以从UI线程调用,而不阻塞UI。但服务器端异步的价值较小,这增加了许多隐藏的人为复杂性,即,需要将I/O操作重写为异步,在许多情况下,除非I/O是瓶颈,否则无法提高性能,例如,异步在以下情况下没有帮助。您将从改用中获得更多的性能优势
public object Post(UsuarioLogin request)
{
var _usuario = usuarioRepo.Login(_cuenta, _password);
if (_usuario != null)
{
if (_usuario.UsuarioPerfilId != 2 )
{
return new UsuarioLoginResponse { Ret = -3 };
}