Windows Communication Foundation
         (WCF) - Part 1




                             Jaliya Udagedara
                                              MCPD
              http://www.jaliyaudagedara.blogspot.com/
What are we going to discuss today?
• Software Development Evolution
• Web Services
• Web Service Architecture
• Invoke a Web Service
• XML
• SOAP
• WSDL
• UDDI
• Demo
Software Development Evolution

   1980s                1990s              2000s


   Object             Component           Service
  Oriented              Based             Oriented

• OOP Concepts   •   Components      • Web Services
                 •   Interfaces      • HTTP Requests
                 •   Substitutable   • XML Messages
                 •   Serialization
Web Services

• What is a Web Service?

A software component designed to
support interoperable machine-to-
machine interaction over a network.
Web Services contd.
• Runs on a Web server.
• HTTP over RPC.
• SOAP (Simple Object Access Protocol) or REST
  (REpresentational State Transfer).
• Exposes functions.
• Listens for HTTP requests and executes Web
  methods.
• Software as a service without concern for the type
  of consumer.
Web Service Architecture


     Discovery             Discover & Locate


    Description            WSDL

     Invocation            SOAP


     Transport             HTTP
Invoke a Web Service
                  WSDL

                SOAP Request
     Client                         Service
               SOAP Response



• Provides an endpoint description using WSDL.
  Processes XML messages framed using SOAP.
• Describes its messages using XML Schema.
• Communicates via open protocols (HTTP etc).
• Can be discovered using UDDI.
XML
• eXtensible Markup Language.
• XML : much like HTML.
• For describing data.
• XML tags are not predefined. We define our own
 tags.
• Prefect for Web Services.
XML contd. : XML vs. HTML
      <html>
           <body>
                <h1>Hello HTML</h1>
                <p>Paragraph</p>
           </body>
      </html>
XML contd. : XML vs. HTML


  <?xml version=1.0?>
       <myxml>
             <mytitle>Hello XML</mytitle>
             <mypara>Paragraph</mypara>
       </myxml>
  </xml>
XML contd. : XML vs. HTML
• HTML
  • What Information?
  • Hard for machine. Relatively easy for human.
• XML
  • Not displaying.
  • Readable to both human and machines.
SOAP (Simple Object Access Protocol)
• SOAP is a format for sending messages.
• SOAP is platform independent.
• SOAP is language independent.
• Different applications running on different
 operating systems.
• SOAP is based on XML.
SOAP (Simple Object Access Protocol)
• SOAP is a format for sending messages.
• SOAP is platform independent.
• SOAP is language independent.
• Different applications running on different on
 operating systems.
• SOAP is based on XML.
WSDL (Web Service Definition
Language)
• Describes the functions & location of the service.
• Again XML Based.
UDDI (Universal Description Discovery
and Integration)
• Directory of web service interfaces.
• Uses WSDL to describe interfaces.
• Communicates via SOAP.
DEMO
Thank You!

Windows communication foundation (part1) jaliya udagedara

  • 1.
    Windows Communication Foundation (WCF) - Part 1 Jaliya Udagedara MCPD http://www.jaliyaudagedara.blogspot.com/
  • 2.
    What are wegoing to discuss today? • Software Development Evolution • Web Services • Web Service Architecture • Invoke a Web Service • XML • SOAP • WSDL • UDDI • Demo
  • 3.
    Software Development Evolution 1980s 1990s 2000s Object Component Service Oriented Based Oriented • OOP Concepts • Components • Web Services • Interfaces • HTTP Requests • Substitutable • XML Messages • Serialization
  • 4.
    Web Services • Whatis a Web Service? A software component designed to support interoperable machine-to- machine interaction over a network.
  • 5.
    Web Services contd. •Runs on a Web server. • HTTP over RPC. • SOAP (Simple Object Access Protocol) or REST (REpresentational State Transfer). • Exposes functions. • Listens for HTTP requests and executes Web methods. • Software as a service without concern for the type of consumer.
  • 6.
    Web Service Architecture Discovery Discover & Locate Description WSDL Invocation SOAP Transport HTTP
  • 7.
    Invoke a WebService WSDL SOAP Request Client Service SOAP Response • Provides an endpoint description using WSDL. Processes XML messages framed using SOAP. • Describes its messages using XML Schema. • Communicates via open protocols (HTTP etc). • Can be discovered using UDDI.
  • 8.
    XML • eXtensible MarkupLanguage. • XML : much like HTML. • For describing data. • XML tags are not predefined. We define our own tags. • Prefect for Web Services.
  • 9.
    XML contd. :XML vs. HTML <html> <body> <h1>Hello HTML</h1> <p>Paragraph</p> </body> </html>
  • 10.
    XML contd. :XML vs. HTML <?xml version=1.0?> <myxml> <mytitle>Hello XML</mytitle> <mypara>Paragraph</mypara> </myxml> </xml>
  • 11.
    XML contd. :XML vs. HTML • HTML • What Information? • Hard for machine. Relatively easy for human. • XML • Not displaying. • Readable to both human and machines.
  • 12.
    SOAP (Simple ObjectAccess Protocol) • SOAP is a format for sending messages. • SOAP is platform independent. • SOAP is language independent. • Different applications running on different operating systems. • SOAP is based on XML.
  • 13.
    SOAP (Simple ObjectAccess Protocol) • SOAP is a format for sending messages. • SOAP is platform independent. • SOAP is language independent. • Different applications running on different on operating systems. • SOAP is based on XML.
  • 14.
    WSDL (Web ServiceDefinition Language) • Describes the functions & location of the service. • Again XML Based.
  • 15.
    UDDI (Universal DescriptionDiscovery and Integration) • Directory of web service interfaces. • Uses WSDL to describe interfaces. • Communicates via SOAP.
  • 16.
  • 17.

Editor's Notes

  • #4 Speaker Notes:Object OrientedInheritancePolymorphismAbstractionComponent BasedComponents : Objects not classesCommunicate though InterfacesEncapsulationSubstitutable : Classes that implements the interfaces can be replaced. (Component B can immediately replace component A, if component B provides at least what component A provided and uses no more than what component A used)Serialization : Store objects or Pass objects from one place to other