Your SlideShare is downloading. ×
0
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Windows Communication Foundation
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Windows Communication Foundation

1,517

Published on

An introductory presentation on Windows Communication Foundation (WCF)

An introductory presentation on Windows Communication Foundation (WCF)

Published in: Technology
1 Comment
1 Like
Statistics
Notes
  • Microsoft Windows Embedded Standard 2009 Released

    http://tech-worlds.blogspot.com/2008/10/windows-embedded-standard-2009-released.html

    Microsoft Windows Embedded Standard 2009 Released

    http://tech-worlds.blogspot.com/2008/10/windows-embedded-standard-2009-released.html
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
1,517
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
175
Comments
1
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. David Truxall, Ph.D. Principal Consultant NuSoft Solutions
  • 2. <ul><li>WCF Basics </li></ul><ul><li>Create A Basic Service </li></ul><ul><li>Error Handling </li></ul><ul><li>Security </li></ul><ul><li>Reliability </li></ul>
  • 3. <ul><li>The next-generation platform for distributed systems </li></ul><ul><li>A pillar of the Microsoft.NET Framework 3.0 </li></ul><ul><li>Build WCF services in Visual Studio 2005 using any .NET Language </li></ul><ul><ul><li>Intelligent code editing, IDE Extensions for WCF, debugging, re-factoring, code snippets, etc. </li></ul></ul><ul><li>Runs on </li></ul><ul><ul><li>Microsoft Windows Vista </li></ul></ul><ul><ul><li>Microsoft Windows XP </li></ul></ul><ul><ul><li>Microsoft Windows Server 2003 </li></ul></ul><ul><li>Codename “Indigo” </li></ul>
  • 4. <ul><li>Unification of Technologies </li></ul><ul><ul><li>Abstraction of service code from the transport layer </li></ul></ul><ul><li>Interoperability </li></ul><ul><ul><li>WS-* specification support </li></ul></ul><ul><li>Service-Oriented Development </li></ul><ul><ul><li>Loose Coupling </li></ul></ul><ul><li>Developer efficiency </li></ul><ul><ul><li>Configuration file based </li></ul></ul><ul><ul><li>Attribute based </li></ul></ul>
  • 5. <ul><li>.asmx web services are still there </li></ul><ul><ul><li>Only Http </li></ul></ul>
  • 6. Client Service Message Endpoint Endpoint Endpoint
  • 7. Client Service Message Address Binding Contract (Where) (How) (What) A B C A B C A B C
  • 8. <ul><li>Three levels of abstraction expressed in WSDL </li></ul><ul><li>Address – Location of the service </li></ul><ul><ul><li>Uri </li></ul></ul><ul><ul><li>Can be dynamic </li></ul></ul><ul><li>Binding – How to talk to the service </li></ul><ul><ul><li>Programmatic or config file based </li></ul></ul><ul><li>Contract – What the service does </li></ul><ul><ul><li>Interface based </li></ul></ul>
  • 9. <ul><li>Consists of: </li></ul><ul><ul><li>Protocol </li></ul></ul><ul><ul><li>Server Name </li></ul></ul><ul><ul><li>Port </li></ul></ul><ul><ul><li>Path </li></ul></ul><ul><li>Logical address does not have map to a physical file, except in IIS </li></ul>
  • 10. <ul><li>A collection of operations that specifies what the Endpoint communicates to the outside world </li></ul><ul><li>Identified by Name and Namespace </li></ul><ul><li>Duplex Contracts </li></ul><ul><ul><li>Server can call client </li></ul></ul><ul><ul><li>WSDualHttpBinding </li></ul></ul><ul><li>Data and Service components </li></ul>
  • 11. <ul><li>Specification of how the client and server will communicate </li></ul><ul><li>Multiple endpoints possible for a service </li></ul><ul><li>Predefined Bindings </li></ul><ul><ul><li>Configuration file based </li></ul></ul><ul><li>Custom Bindings </li></ul>
  • 12. <ul><li>BasicHttpBinding </li></ul><ul><li>WSHttpBinding </li></ul><ul><li>WSDualHttpBinding </li></ul><ul><li>WSFederationBinding </li></ul><ul><li>NetTCPBinding </li></ul><ul><li>NetPeerTCPBinding </li></ul><ul><li>NetNamedPipeBinding </li></ul><ul><li>NetMsmqBinding </li></ul><ul><li>MsmqIntegrationBinding </li></ul>
  • 13. <ul><li>Create the contract </li></ul><ul><ul><li>Interfaces and implementations </li></ul></ul><ul><ul><ul><li>Data Contracts </li></ul></ul></ul><ul><ul><ul><li>Service Contracts </li></ul></ul></ul><ul><li>Host the service </li></ul><ul><li>Configure bindings </li></ul><ul><li>Create a client </li></ul>
  • 14.  
  • 15. <ul><li>SOAP Faults </li></ul><ul><ul><li>CLR Exceptions converted to FaultException </li></ul></ul><ul><li>Strongly-typed FaultException </li></ul><ul><ul><li>Part of Contract </li></ul></ul><ul><li>Unexpected Messages </li></ul><ul><ul><li>UnknownMessageReceived event </li></ul></ul><ul><ul><li>Attacks/Probes </li></ul></ul><ul><ul><li>Out-of-date proxy </li></ul></ul>
  • 16.  
  • 17. <ul><li>Transport Level Security </li></ul><ul><li>Message Level Security </li></ul><ul><li>Authentication and Authorization </li></ul>
  • 18. <ul><li>Secure Sockets Layer (SSL) </li></ul><ul><ul><li>More efficient </li></ul></ul><ul><ul><li>More configuration </li></ul></ul><ul><ul><li>Interoperable with ASP.Net Web Services </li></ul></ul>
  • 19. <ul><li>Certificates </li></ul><ul><ul><li>X.509 </li></ul></ul><ul><ul><li>SOAP Message Security </li></ul></ul>
  • 20. <ul><li>Enterprise </li></ul><ul><ul><li>Active Directory </li></ul></ul><ul><ul><ul><li>Windows Authentication </li></ul></ul></ul><ul><ul><ul><li>Windows Token Role Provider </li></ul></ul></ul><ul><ul><li>Basic Authentication </li></ul></ul><ul><ul><li>Impersonation </li></ul></ul><ul><li>Internet </li></ul><ul><ul><li>SqlMembershipProvider </li></ul></ul><ul><ul><li>SqlRoleProvider </li></ul></ul><ul><li>Windows Cardspace </li></ul><ul><li>Authorization via Attributes </li></ul>[PrincipalPermission(SecurityAction.Demand, Role=&quot;WarehouseStaff&quot;)] public List<string> ListProducts() {…}
  • 21. <ul><li>WS-ReliableMessaging Specification </li></ul><ul><ul><li>No duplication </li></ul></ul><ul><ul><li>Resend lost messages </li></ul></ul><ul><li>Sequencing </li></ul><ul><ul><li>Buffers and re-orders received messages </li></ul></ul><ul><li>Replay Detection </li></ul><ul><ul><li>Nonces </li></ul></ul>
  • 22. <ul><li>Postings at my blog: </li></ul><ul><li>http://dotnetjunkies.com/WebLog/davetrux/ </li></ul><ul><li>Aaron Skonnard WCF Wiki </li></ul><ul><li>http://pluralsight.com/wiki/default.aspx/Aaron/WindowsCommunicationFoundationWiki.html </li></ul><ul><li>Link aggregation on TheServerSide.Net </li></ul><ul><li>http://www.theserverside.net/tt/articles/showarticle.tss?id=WCFSpecial&asrc=EM_NLN_1081699&uid=2446223 </li></ul>
  • 23. <ul><li>WCF Basics </li></ul><ul><li>Create A Basic Service </li></ul><ul><li>Error Handling </li></ul><ul><li>Security </li></ul><ul><li>Reliability </li></ul>
  • 24.  

×