Your SlideShare is downloading. ×
0
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
WCF LOB SDK from CodeMastery
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

WCF LOB SDK from CodeMastery

1,260

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,260
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
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
  • Brackets show the “classic ERP” part of the datasource is optionalWhy have I not heard of this before? - Probably because it is so closely related to BizTalk or because it has not been merged into System.ServiceModel and the core .NET framework.
  • - If you have tried creating a custom binding on your own you know it requires quite a bit of custom code for implementing the channels, extension behaviors (if necessary), binding elements, etc., and any deployment related artifacts. Doing all of these steps involved quite a bit of work and was almost prohibitively costly for the relatively low gain of the custom binding. With the SDK it is much easier to create a custom binding in a few hours. - Some of the things provided here would be useful just for harvesting and incorporating in your own projects.
  • Notice the difference in terminology regarding the service. An adapter is another name for a custom binding. In the BizTalk sense a custom binding functions similar to a custom adapterBuilt on some of the familiar things from .NET and extended just a little.
  • This demo shows use of the sqlBinding which is in the BizTalk adapter pack but illustrates what can be done with a custom binding created through the WCF LOB SDK.
  • With .NET 4, protocol transitioning or bridging is provided out-of-the-box, and you do not need to expose one service to feed off some other one, effectively wrapping the logic twice. The WCF LOB SDK service wrapper provides a rudimentary similarity – you only expose one service.
  • Transcript

    • 1. Exploring the WCF LOB SDK
      Ben Cline
      Sr. Consultant, BizTalk MVP
    • 2. About Ben Cline – BenC@magenic.com
      Speaker Profile
      Sr. Consultant
      Work on BizTalk, WF, WCF, SharePoint projects
      Blog: msinnovations.spaces.live.com
      Community Focuses
      BizTalk MVP 2009-2010
      MSDN Forums Poster, Moderator
      Active in testing Connect releases – VS 2010
    • 3. Objectives and Takeaways
      Introductions
      Overview of the WCF LOB SDK
      Demo - SqlBinding
      Architecture of the SDK
      Enterprise LOB and Generic Datasource Scenarios
      Demo - SalesForceBinding
    • 4. Overview of the WCF LOB SDK
    • 5. What is the WCF LOB SDK?
      Free Toolkit from Microsoft based on WCF custom bindings
      Provides client manageability, usability improvements for using custom bindings
      LOB = [classic ERP] datasource
      Can be used for any system that needs to provide metadata or context to developers
      Architectural foundation for BizTalk Adapter Pack
    • 6. What is provided?
      VS client-side integration
      Wizards for creating custom binding adapters (Code gen)
      Metadata explorer
      WCF Service wrapper extension
      SDK, samples
      Add custom binding to machine.config code
      Setup project example
    • 7. Comparing WCF and WCF LOB SDK
      WCF
      Service, client
      Default, standard bindings
      Custom bindings based on binding elements
      Add Service Reference
      .NET compatible config file elements
      WCF LOB SDK
      Adapter, client, optional service
      Custom bindings based on binding elements
      Add Adapter Service Reference
      .NET compatible config file elements
    • 8. Demo - Using the sqlBinding in VS 2008
      Observations
      Wizard-like form similar to Add Service Ref
      Object browser enables quick selection of datasource objects
      After wizard executes, new proxy class added
      DataContracts created for parameters, results
      When used with BizTalk, XSDs are generated
      Proxy generation options like with SvcUtil
    • 9. WCF Channel Model
      WCF LOB Landscape
      WCF Service Model
      SharePoint
      Server
      BizTalk Server
      SQL
      Server
      Custom
      .NET
      Application
      ASP.NET 2.0
      ADO.NET
      Provider
      BizTalk WCF
      Adapter
      WCF
      Adapter SDK Runtime
      Adapter SDK Runtime
      Adapter SDK Runtime
      Adapter SDK Runtime
      WCF Transport
      (HTTP, TCP, …)
      SQLAdapter
      Oracle DB
      Adapter
      SAP Adapter
      Any LOB
      Adapter
      Web Service
      Siebel
      Oracle DB
      SAP
      Any LOB System
    • 10. Questions?
      FAQ:
      What about VS 2010 support?
      The add adapter service reference not showing up after install. Why?
      Compatible w/ EF?
    • 11. Enterprise LOB & Generic DatAsource Scenarios
    • 12. Enterprise LOB Scenario
      Enterprise system storing data: SAP, Oracle, PeopleSoft, Siebel, CRM, etc.
      System-specific formats, connectivity, supporting infrastructure
      WCF LOB SDK provides foundation for custom bindings/adapters based on your code:
      Example: Custom Oracle binding from WCF LOB SDK + ODP.Net APIs
      WCF LOB SDK service wrapper acts as protocol transition/bridge layer
    • 13. Generic Datasource Scenario
      LOB<T> where T : YourDataSource
      Foundation for exposing data or O/R layer
      Middle tier service layer
      CSLA service layer
    • 14. Other Uses for the SDK
      Client for connecting to ESB or SOA resources
      Light weight UDDI explorer
      Centralize connectivity management
      Client for missing VS functionality – for referencing Web 2.0 services
    • 15. Questions?
      FAQ:
      What are the licensing terms of the BizTalk Adapter Pack?
      What do you mean by “protocol transition” or “protocol bridging”?
    • 16. Architecture of the WCF LOB SDK
    • 17. Component Architecture
      WCF Application
      Adapter MetadataUtility Tool
      Run Time
      Design Time
      Channel Implementation
      Tracing/Perf Counters
      MetadataExchanger
      Connection URI Builder
      Connection PoolManagement
      WSDLBuilder
      MetadataBrowse/Search
      MetadataManagement
      WCF Connection
    • 18. WCF LOB SDK Development Lifecycle
      Wizard based metadata code generation
      Setup projects based on samples
      Connection, URI, Property Grid Type Editors
      Binding Elements if required
      Metadata Browser and Search
      WSDL customizations
    • 19. Demo – SalesForceCustomBinding
      No supported SalesForce VS extension currently was available
      SalesForce provides REST and SOAP APIs but has specialized implementation
      Async operations only exposed on REST, would be useful if called via SOAP and bridged from REST
    • 20. Appendix
    • 21. Example of a custom binding (WCF)
      <configuration> <system.serviceModel> <bindings>
      <customBinding> <binding name="myBinding"> <textMessageEncodingmessageVersion="Soap11" /> <httpTransport /> </binding>
      </customBinding> </bindings> <services>
      <service behaviorConfiguration="WcfServiceLibrary1.Service1Behavior" name="WcfServiceLibrary1.Service1"> <endpoint address="" binding="customBinding" bindingConfiguration="myBinding" contract="WcfServiceLibrary1.IService1"> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> <host> <baseAddresses> <add baseAddress="http://localhost:8731/Design_Time_Addresses/WcfServiceLibrary1/Service1/" /> </baseAddresses> </host> </service> </services>
    • 22. Comparing WCF LOB with BizTalk
      WCF LOB SDK
      Custom Binding centric
      Custom Bindings shown in Add Adapter Service wizard
      .NET project: add adapter service
      Generates client proxy
      BizTalk
      Adapter centric
      Custom Bindings shown in WCF-Custom adapter
      BizTalk project: Add generated items consume adapter service
      Generates BizTalk schema, binding file
    • 23. Resources
      WCF LOB SDK for VS 2008 (Get SP2 separately):
      http://www.microsoft.com/downloads/details.aspx?FamilyID=56278fde-b708-469c-987e-ded9c6c5e580&DisplayLang=en
      Links to Documentation, Webcasts: http://msinnovations.spaces.live.com/blog/cns!62E68922E47BC425!1169.entry

    ×