简单来说,WCF是一种微软开发的技术,用于构建分布式应用程序。它允许应用程序在不同的计算机上通过网络进行通信,并支持多种协议和传输方式。
从维基百科页面中获取含义并不容易。
WCF - Windows Communication Framework(Windows通信框架)- 是微软的框架,旨在让进程间通信更加容易。它让您通过多种方式进行通信,如平凡的asmx web服务、Remoting、MS消息队列等等。
它可以让您与其他.NET应用程序或非微软技术(如J2EE)进行交流。它的可扩展性足以支持像REST这样的新技术(我认为REST不是内置的)。
WCF允许您创建“服务”,而无需指定它是Windows服务还是Web服务,也不需要指定使用哪些协议进行通信或如何对数据进行序列化。
所有这些细节可以在服务主机中通过编程方式或通过配置文件进行外部指定。
我建议你阅读有关Indigo(第一个WCF名称)的内容。这是一个旧文章比维基百科更好地解释定义的情况。
这是完整的文章。
"Indigo"是微软用于构建面向服务的应用程序的统一编程模型。
但是,“面向服务”是什么意思呢?
选择构建软件的最佳抽象是一个持续的过程。对象是今天构建应用程序业务逻辑的主要方法,但使用对象建模应用程序之间的通信并不成功。更好的方法是明确地将软件离散块之间的交互建模为服务。
已经存在大量支持(2005年)用于构建面向对象的应用程序,但将服务视为基本的软件构建块是一个更近期的想法。因此,专门设计用于创建面向服务的应用程序的技术并没有广泛可用。
1. Indigo还结合了5种技术。
所有这些选项都有价值,但多样性肯定会使开发人员感到困惑。为什么有那么多选择?更好的解决方案是拥有一种技术来解决所有这些问题。那就是WCF。
2. 与非Microsoft应用程序的互操作性
通过统一不同的技术,为Windows开发人员简化生活是一件好事。但是,由于供应商对Web服务的普遍协议,也可以解决长期存在的应用程序互操作问题。(例如,在Linux或其他操作系统上通信.NET Windows应用程序与Java应用程序)。
WCF代表Windows Communication Foundation,是微软试图解决和简化网络编程的尝试。它提供了一种易于使用的抽象层,可覆盖不同的通信协议和传输方法。这使您能够更多地集中精力于您想要实现的内容,而不必考虑如何实现。请阅读微软的WCF FAQ以获取更多信息。