简单来说什么是WCF?
很难从the Wikipedia page中提炼出含义。
答案 0 :(得分:29)
WCF - Windows Communication Framework - 是Microsoft的框架,可以使进程间通信更容易。它让你通过各种方式,普通的旧asmx网络服务,远程处理,MS消息队列以及其他几种方式进行这种通信。
它让你与其他.NET应用程序或非Microsoft技术(如J2EE)交谈。它的可扩展性足以允许更新的东西,比如REST(我不认为REST是内置的)。
答案 1 :(得分:7)
WCF允许您创建“服务”而不指定它是Windows服务或Web服务,或者使用哪些协议与其通信或如何序列化数据。
所有这些细节都可以在外部指定,可以在服务主机中以编程方式指定,也可以通过配置文件指定。
答案 2 :(得分:3)
WCF代表Windows Communication Foundation。这是微软试图整理和简化网络编程的尝试。它提供了一种易于使用的抽象级别,可用于不同的通信协议和传输方法。它允许您更专注于想要实现的,而不是考虑如何来实现它。阅读Microsoft的WCF FAQ了解更多信息。
答案 3 :(得分:3)
我建议您阅读有关Indigo(第一个WCF名称)的内容。当旧文章比维基百科更好地解释定义时就是这种情况。
以下是完整的article。
“Indigo”,微软用于构建的统一编程模型 面向服务的 应用程序。
但“服务导向”是什么意思?
选择构建软件的最佳抽象是持续的 处理。物体是今天建造物体的主要方法 应用程序的业务逻辑,但是应用程序到应用程序的建模 使用对象的通信并没有那么成功。 更好 方法是明确建模离散块之间的交互 作为服务的软件。
已经有很多支持(2005)用于构建面向对象的应用程序, 但是将服务视为基本的软件构建块 是一个更新的想法。因此,明确设计用于创建面向服务的应用程序的技术尚未广泛使用。
<强> 1。 Indigo也是5种技术的结合。
所有这些选项都有价值,但多样性肯定会让开发人员感到困惑。为什么有这么多选择?更好的解决方案是使用一种解决所有这些问题的技术。那是WCF。
<强> 2。与非Microsoft应用程序的互操作性
通过统一不同的技术让Windows开发人员的生活更轻松是一件好事。但是,随着供应商之间对Web服务的普遍认同,应用程序互操作性的长期问题也可以得到解决。 (例如,在Linux或其他操作系统上使用.NET应用程序与.NET应用程序进行通信)。
答案 4 :(得分:2)
WCF是微软新的.NET do-all可扩展通信框架,旨在取代以前DCOM,.NET Remoting和ASMX Web服务中提供的功能。