寻找WCF REST启动工具包的替代方案,理想情况是OSS框架。
任何人都有名单?
干杯
奥利
答案 0 :(得分:8)
OpenRASTA是最成熟的
答案 1 :(得分:4)
在生成REST XML和JSON提要时,ASP.NET MVC是一个很好的选择。
答案 2 :(得分:2)
要在.net中构建休眠体系结构,您可以使用GenericHandlers。您可以创建一个GenericHandler,它将接收HTTP消息(POST,GET或..)并返回您指定的内容类型的消息。
例如,我在url上创建了一个通用处理程序:
http://site/getpeople.ashx?gender=female
并使用parmeter gender = female调用它,如上面的处理程序将返回以下
<people>
<person>...</person>
...
<people>
内容类型为text / xml。
这是在.NET中实现REST Web服务的最简单方法
答案 3 :(得分:2)
我还提供ServiceStack,一个现代的,代码优先,DTO驱动的WCF替代Web服务框架,鼓励代码和远程最佳实践,以创建干,高性能,可扩展的REST Web服务。
没有XML配置或代码生成,并且您可以自动在所有JSON,XML,SOAP,JSV,CSV,HTML端点上启用一个干净的C#Web服务。它包括通用同步/异步服务客户端,提供端到端的快速,类型化的客户端/服务器通信网关。
它还包括generic sync/async service clients端到端提供快速,类型化的客户端/服务器通信网关。
这是创建简单Web服务所需的所有代码的完整示例,它自动没有任何配置,已在所有web data formats on pre-defined and custom REST-ful routes上注册并可用:
public class Hello {
public string Name { get; set; }
}
public class HelloResponse {
public string Result { get; set; }
}
public class HelloService : IService<Hello> {
public object Execute(Hello request) {
return new HelloResponse { Result = "Hello, " + request.Name };
}
}
可以在C#中调用以上服务(没有任何构建步骤/代码),如下所示:
var response = client.Send<HelloResponse>(new Hello { Name = "World!" });
Console.WriteLine(response.Result); // => Hello, World
在jQuery中:
$.getJSON('hello/World!', function(r){
alert(r.Result);
});