Mono上的独立异步Web API

Sti*_*son 10 mono async-await servicestack asp.net-web-api

有没有人有成功(生产代码)在Mono上托管独立的异步Web API(asp.net web API)服务?独立我的意思是在asp.net之外的控制台应用程序中托管API.

我正在寻找一种简单的方法来创建REST API,我真的很想让我的堆栈异步(C#5样式)从顶层HTTP层到底层数据访问层,现在C#5有这么好的支持为了它.

通常我会使用ServiceStack并将其作为Linux上的守护进程托管,但由于ServiceStack不支持其服务中的新C#5异步内容(据我所知),我正在考虑使用自托管的异步Web API在Mono上.

我知道,有在ServiceStack的方式有些异步分支,但还没有准备好,我知道有在ServiceStack一些asynconeway东西,但我不认为这是使用新的基于任务异步的东西在C# 5.

所以我的问题是,在单声道上使用自托管异步Web API制作REST服务是否可行且稳定,或者在Mono上进行独立托管时是否更好地使用同步ServiceStack?

Teo*_*gul 9

更好地使用异步NancyFx.Mono(尚未)很好地支持Web API.和Nancy一样,你会喜欢:

public Module()
{
    Get["/greet/{name}"] = async x => {
        await Task.Delay(5000);
        return string.Concat("Hello ", x.name);
    };
}
Run Code Online (Sandbox Code Playgroud)

  • Nancy Async支持在技术上是测试版,但是它已经在很多地方投入使用,到目前为止我们唯一的错误就是解开聚合异常,所以它很可靠:) (2认同)