你能告诉我WCF的开源替代方案吗? 我是新手,刚开始使用WCF。我想知道开源的替代品。 此外,与WCF相比,是什么使他们成为更好的选择/不太好。
谢谢, Thothathri
答案 0 :(得分:6)
有REST服务的开源项目 - 例如Open Rasta也许您还会找到一些基本SOAP服务的开源项目,但我怀疑有一个开源项目实现了所有与WS- *相关的东西实现在WCF中。 WS- *协议主要仅在大公司的API中实现--MS,IBM,Oracle,SAP等。原因是:
即使WCF也只实现WS- *协议的子集。但是WCF是高度可扩展的,所以任何人都可以尝试自己实现这些缺失的协议。
WCF不仅声明REST和SOAP服务。它也是旧版.NET的.NET Remoting和Enterprise服务的替代品。您将找不到也将提供所有此功能的.NET API。
答案 1 :(得分:4)
我还强烈建议您查看 ServiceStack ,这是我开始使用的无配置Web服务框架,可让您轻松快速地开发Web服务,而且几乎没有摩擦。
它提供了一个富有表现力的无摩擦环境,因为您可以使用自己的POCO C#DTO开发Web服务,这也鼓励最佳实践Web服务开发,因为您可以轻松地创建更多批处理,粗粒度的API。
它的目标是通过将C#与HTTP紧密融合来提高工作效率,其中所有返回的C#对象都会自动序列化为所请求的格式,并支持(XML,JSON,JSV,CSV,SOAP 1.1 / 1.2,HTML)。 -框。 C#异常也会自动序列化,让您轻松完成繁琐的工作。
其中一个主要好处是不需要关注外部格式和端点(由框架负责),而您只需在洁净室中开发逻辑,自动连线并且可高度测试,类似DDD的IService类。
答案 2 :(得分:2)
如果您正在尝试创建RESTful服务,则可以使用RestCake。
答案 3 :(得分:0)
Mono项目正在为Github中托管的WCF进行持续的努力。如您所知,System.ServiceModel是WCF的主要引擎。您可以在/mono/mcs/class/System.ServiceModel.*
下找到这些名称空间的Mono实现。您可以找到与项目相关的更新和相关的贡献信息here