C# 服务器上的ServiceStack和对异步/等待的支持?
是否可以在ServiceStack的服务器方法上利用async/await?谷歌(google)推出了一个新的版本,似乎可以做到这一点,但它已经有几个月没有更新了,如果该代码已经被合并到当前的官方版本(v3.9.32)中,也没有任何信息 我使用async/await模式构建了一个简单的服务,但它的行为并不正确,但我想知道这是否只是一个配置问题。代码如下:C# 服务器上的ServiceStack和对异步/等待的支持?,c#,
servicestack,async-await,C#,
servicestack,Async Await,是否可以在ServiceStack的服务器方法上利用async/await?谷歌(google)推出了一个新的版本,似乎可以做到这一点,但它已经有几个月没有更新了,如果该代码已经被合并到当前的官方版本(v3.9.32)中,也没有任何信息 我使用async/await模式构建了一个简单的服务,但它的行为并不正确,但我想知道这是否只是一个配置问题。代码如下: public class PodcastService : Service { public async Task<object
public class PodcastService : Service
{
public async Task<object> Get(Podcast request)
{
var client = new WebClient();
var data = await client.DownloadStringTaskAsync("http://www.google.fi");
return new PodcastResponse() { Date = DateTime.Now };
}
}
为了进行比较,以下是没有任何异步/等待的相同方法:
public class PodcastService : Service
{
public object Get(Podcast request)
{
return new PodcastResponse() { Date = DateTime.Now };
}
}
结果如下:
{"Date":"2012-12-10T17:20:23.0245677+02:00"}
有什么想法吗?fork是否仍在继续,或者async/await是否已经在ServiceStack中实现,但需要一些配置?您可以检查项目状态。异步分支仍处于“执行”阶段 第一个结果看起来像一个序列化的任务对象,所以他们肯定还没有添加异步服务支持 更新
我们可以忘记async/await fork,对v4进行彻底重写。最新的可用版本v3.9.62是随着开发切换到v4而出现的。第一个结果似乎是一个序列化的任务对象,其结果属性包含日期值。看起来他们还没有合并叉子。从这个答案来看,他们计划在v.4中添加异步支持,但看起来仍处于“执行”阶段……事实上,这已经完全放弃了。事实上,-但它将包括任务支持。
{"Date":"2012-12-10T17:20:23.0245677+02:00"}