10

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

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

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

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

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

4

2 回答 2

9

更好地使用异步 NancyFx。Mono(目前)还没有很好地支持 Web API。有了南希,你会喜欢:

public Module()
{
    Get["/greet/{name}"] = async x => {
        await Task.Delay(5000);
        return string.Concat("Hello ", x.name);
    };
}
于 2013-07-01T08:52:39.157 回答
4

不完全是独立的应用程序,但请查看本教程在 Linux 和 OS X 下运行 ASP.NET Web API 服务它展示了如何从基于 UNIX 的操作系统运行 ASP.NET Web API。

于 2013-09-20T23:52:00.307 回答