Analysis of the difference between WCF and WebService, WPF and Silverlight

Source: Internet
Author: User
Tags managed hosting silverlight msmq

Because in the Windows service invocation quartz.net implementation message Dispatch, the ASP. NET Web Service

Webservicesoapclient client = new Webservicesoapclient (new BasicHttpBinding (), New EndpointAddress (URL));
Client. Shake ();

The effect is always not too good, so Google search, this article as usual accumulation.

I. ASP. NET Web Service

Web Service: Strictly speaking, the industry standard, the Web service specification, also known as the WS-* specification, is neither a framework nor a technology.

It has a complete set of standard system standards, but also in the continuous improvement of the update. It uses XML extension markup language to represent data (this is the key to language and platform).

Microsoft's Web service implementations are called ASP. It uses the SOAP simple Object Access protocol to implement data interactions between applications in a distributed environment. WSDL to implement a service interface-related description. In addition, Web services can be registered with the UDDI Center for use by its customers. Later, Microsoft made ASP. NET Web service security, performance, data encryption, decryption, managed hosting, and many other extensions, called the WSE series, this is over-product, up to WSE3.0. And then it was the WCF era.

Second, WCF

WCF: is a development framework for distributed applications that belongs to a specific technology, or platform. Neither the standard nor the norm.

WCF is, in part, an ASP. NET Web service, because it supports the industry standard and core protocols of Web service, so what ASP. NET Web service and WSE can do, it is almost capable, Cross-platform and language is not a problem (the data also supports XML formatting and provides its own formatter). but WCF, as Microsoft's main push for a communications component or platform, aims not only to support and integrate Web Service, because it is also compatible and has the features of many of Microsoft's early technologies.

According to Microsoft's official explanation, WCF (previously known as "Indigo") is a unified framework for building and running service-oriented services (oriented) applications using managed code. It enables developers to build a secure, trustworthy, transactional solution across platforms that can be compatible with existing systems.

WCF is the integrator of Microsoft's distributed application development, which integrates. NET platform, all technologies related to distributed systems, such as Enterprise Sevices (COM +). NET Remoting, Web Service (ASMX), WSE3.0, and MSMQ Message Queuing. In the context of communication (communiation), it can span processes, across machines, across subnets, corporate networks and the Internet, and in the host program, you can host Asp.net,exe,wpf,windows forms,nt service,com+ (Host). WCF can support protocols including tcp,http, cross-process and custom, and security mode includes SAML, kerberos,x509, user/password, custom and many other standards and patterns. That is, under the WCF framework, it is easy to develop a distributed system based on SOA, and Microsoft has included all the technical elements associated with it, mastering WCF as the key to opening the door to SOA.

WCF is able to build a cross-platform, secure, trustworthy, transactional solution that is a webservice,.net remoting,enterprise service,wse,msmq, a classic contrast chart as follows:

Comparison of WCF and other distributed technologies table

  

Iii. WPF and Silverlight, WinForm

In Windows, features such as form drawing are implemented by GDI and placed in the operating system kernel. Windows forms uses GDI + on the ground floor. GDI + is the "object-oriented wrapper" for GDI, implemented using C + +.

  GDI +, used in. NET Windows forms applications, is actually a layer above the unmanaged code implemented in C + +, allowing us to invoke GDI + functional drawing using a managed programming language such as C #. The WPF underlying uses DirectX, the one that is commonly used to develop games. WPF has nothing to do with Windows Forms.  According to Microsoft's intent, WPF is used to replace Windows Form, so the latest Visual Studio uses the WPF development interface, which is a very clear signal.  Of course, for compatibility purposes, Windows forms and WPF will coexist for long periods of time, and can be seen as two separate sets of interface technologies. Silverlight can be seen as a subset of WPF at the API layer, but in fact there is no link between Silverlight and WPF in addition to this. Because Silverlight applications do not rely on the. NET Framework, as long as the user's computer (or phone) is installed with a Silverlight runtime environment (such as a user adding a Silverlight plugin to a browser over the Internet),  You can run Silverlight applications without requiring users to install a large. NET Framework. The Silverlight runtime environment can also be seen as a functional subset of the standard. NET Framework at the API level, but it is completely re-written, independent of the standard. NET Framework, although for ease of application development,  Microsoft strives to maintain consistency between the two at the API level, but does not preclude the Silverlight runtime environment from having a completely new feature that is not available for the. NET standard environment in the future.  Windows Forms/wpf/silverlight These three are actually independent development of the three technical areas, but Microsoft for the purpose of convenient development, the intention of Silverlight and WPF in the application-level development experience (even most of the application layer code) is highly consistent.  From a development perspective, Windows Forms has many years of history, is highly mature, has a large number of third-party controls and other resources, if the development of "standard" and "common" interface type of Windows applications, it can be used to achieve high development efficiency and good operational performance. The advantage of WPF is that it can develop very "personalized" Windows applications, and you can implement the various user interfaces that you can "dream" without any restrictions, and in multimedia such as animations, WPF is better than Windows Forms, plus,  WPF's data-binding mechanism is also more powerful and flexible than Windows Forms. WPF'sThe disadvantage is that it requires a high level of computer hardware, which is not as good as the Windows Forms version for computers with lower hardware configurations.  For now, the best platform for WPF is Windows 7. Windows forms and WPF are primarily used to develop desktop applications, and Silverlight's main battlefield is the internet, which is typically used to develop RIA Internet applications, or applications that run on smart mobile devices such as mobile phones. It can be said that WPF, without too much effort, can go to develop Silverlight applications, the two are very similar, especially the interface layer code, because all using XAML, which makes it easier for an application to develop "desktop", "mobile" and "browser version"  Three versions, and the three versions have a consistent look and feel for the user interface. The above introduction is quoted Bitfan blog (http://blog.csdn.net/bitfan/article/details/6128391)

Analysis of the differences between WCF and WebService, WPF and Silverlight

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.