SlideShare une entreprise Scribd logo
1  sur  23
Exploring the WCF LOB SDK Ben Cline Sr. Consultant, BizTalk MVP
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
Objectives and Takeaways Introductions  Overview of the WCF LOB SDK Demo - SqlBinding Architecture of the SDK Enterprise LOB and Generic Datasource Scenarios Demo - SalesForceBinding
Overview of the WCF LOB SDK
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
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
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
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
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
Questions? FAQ: What about VS 2010 support? The add adapter service reference not showing up after install. Why? Compatible w/ EF?
Enterprise LOB & Generic DatAsource Scenarios
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
Generic Datasource Scenario LOB<T> where T : YourDataSource Foundation for exposing data or O/R layer Middle tier service layer CSLA service layer
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
Questions? FAQ: What are the licensing terms of the BizTalk Adapter Pack? What do you mean by “protocol transition” or “protocol bridging”?
Architecture of the WCF LOB SDK
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
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
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
Appendix
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>
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
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

Contenu connexe

Tendances

SOA and WCF (Windows Communication Foundation) basics
SOA and WCF (Windows Communication Foundation) basicsSOA and WCF (Windows Communication Foundation) basics
SOA and WCF (Windows Communication Foundation) basicsYaniv Pessach
 
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk Services
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk ServicesSQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk Services
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk ServicesSandro Pereira
 
Lixsql port enterprise integration
Lixsql port   enterprise integrationLixsql port   enterprise integration
Lixsql port enterprise integrationSandro Pereira
 
Presentation for a Media Company
Presentation for a Media CompanyPresentation for a Media Company
Presentation for a Media CompanyMark Goetsch
 
Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Quang Nguyễn Bá
 
Improved JSON Support of WSO2 ESB 4.8
Improved JSON Support of WSO2 ESB 4.8Improved JSON Support of WSO2 ESB 4.8
Improved JSON Support of WSO2 ESB 4.8WSO2
 
Microservices and the Cloud-Based Future of Integration
Microservices and the Cloud-Based Future of IntegrationMicroservices and the Cloud-Based Future of Integration
Microservices and the Cloud-Based Future of IntegrationBizTalk360
 
ESB Evaluation Framework
ESB Evaluation FrameworkESB Evaluation Framework
ESB Evaluation FrameworkWSO2
 
The use case of a scalable architecture
The use case of a scalable architectureThe use case of a scalable architecture
The use case of a scalable architectureToru Wonyoung Choi
 
How to process Flat Files documents (TXT, CSV …) in BizTalk Server
How to process Flat Files documents (TXT, CSV …) in BizTalk ServerHow to process Flat Files documents (TXT, CSV …) in BizTalk Server
How to process Flat Files documents (TXT, CSV …) in BizTalk ServerSandro Pereira
 
Introduction to WCF
Introduction to WCFIntroduction to WCF
Introduction to WCFybbest
 
WSO2: Bringing Cloud Computing and SOA Together
WSO2: Bringing Cloud Computing and SOA TogetherWSO2: Bringing Cloud Computing and SOA Together
WSO2: Bringing Cloud Computing and SOA TogetherWSO2
 
Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례uEngine Solutions
 
WCF (Windows Communication Foundation)
WCF (Windows Communication Foundation)WCF (Windows Communication Foundation)
WCF (Windows Communication Foundation)ipower softwares
 
SOA vs Microservices vs SBA
SOA vs Microservices vs SBASOA vs Microservices vs SBA
SOA vs Microservices vs SBAMichael Sukachev
 

Tendances (20)

SOA and WCF (Windows Communication Foundation) basics
SOA and WCF (Windows Communication Foundation) basicsSOA and WCF (Windows Communication Foundation) basics
SOA and WCF (Windows Communication Foundation) basics
 
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk Services
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk ServicesSQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk Services
SQLSaturday #341 porto - Introduction to Microsoft Azure BizTalk Services
 
Lixsql port enterprise integration
Lixsql port   enterprise integrationLixsql port   enterprise integration
Lixsql port enterprise integration
 
Presentation for a Media Company
Presentation for a Media CompanyPresentation for a Media Company
Presentation for a Media Company
 
Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010
 
Improved JSON Support of WSO2 ESB 4.8
Improved JSON Support of WSO2 ESB 4.8Improved JSON Support of WSO2 ESB 4.8
Improved JSON Support of WSO2 ESB 4.8
 
Understanding Web services
Understanding Web servicesUnderstanding Web services
Understanding Web services
 
Microservices and the Cloud-Based Future of Integration
Microservices and the Cloud-Based Future of IntegrationMicroservices and the Cloud-Based Future of Integration
Microservices and the Cloud-Based Future of Integration
 
ESB Evaluation Framework
ESB Evaluation FrameworkESB Evaluation Framework
ESB Evaluation Framework
 
The use case of a scalable architecture
The use case of a scalable architectureThe use case of a scalable architecture
The use case of a scalable architecture
 
ad.ppt
ad.pptad.ppt
ad.ppt
 
How to process Flat Files documents (TXT, CSV …) in BizTalk Server
How to process Flat Files documents (TXT, CSV …) in BizTalk ServerHow to process Flat Files documents (TXT, CSV …) in BizTalk Server
How to process Flat Files documents (TXT, CSV …) in BizTalk Server
 
Introduction to WCF
Introduction to WCFIntroduction to WCF
Introduction to WCF
 
WCF Introduction
WCF IntroductionWCF Introduction
WCF Introduction
 
WSO2: Bringing Cloud Computing and SOA Together
WSO2: Bringing Cloud Computing and SOA TogetherWSO2: Bringing Cloud Computing and SOA Together
WSO2: Bringing Cloud Computing and SOA Together
 
Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례
 
WCF (Windows Communication Foundation)
WCF (Windows Communication Foundation)WCF (Windows Communication Foundation)
WCF (Windows Communication Foundation)
 
Micro service architecture
Micro service architectureMicro service architecture
Micro service architecture
 
SOA vs Microservices vs SBA
SOA vs Microservices vs SBASOA vs Microservices vs SBA
SOA vs Microservices vs SBA
 
Cfalfresco
CfalfrescoCfalfresco
Cfalfresco
 

Similaire à Exploring the WCF LOB SDK

BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010Bala Subra
 
Web service through cxf
Web service through cxfWeb service through cxf
Web service through cxfRoger Xia
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonAdnan Masood
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheetkaushiksin
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheetkaushiksin
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheetkaushiksin
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheetkaushiksin
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Archluohd
 
Net35 Overview
Net35 OverviewNet35 Overview
Net35 Overviewllangit
 
Hybrid Solution Integration
Hybrid Solution IntegrationHybrid Solution Integration
Hybrid Solution IntegrationBizTalk360
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 
.Net3.5 Overview
.Net3.5 Overview.Net3.5 Overview
.Net3.5 Overviewllangit
 
Biztalk Server 2010: Introdução
Biztalk Server 2010: IntroduçãoBiztalk Server 2010: Introdução
Biztalk Server 2010: IntroduçãoComunidade NetPonto
 
Net35 Overview
Net35 OverviewNet35 Overview
Net35 Overviewllangit
 
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk Services
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk ServicesGlobal Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk Services
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk ServicesSandro Pereira
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devsguest0a62e8
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesWes Yanaga
 

Similaire à Exploring the WCF LOB SDK (20)

BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
 
Web service through cxf
Web service through cxfWeb service through cxf
Web service through cxf
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural Comparison
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
 
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data SheetBiz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
Biz Talk Adapter Pack 2 0 Oracle Ebs Adapter Data Sheet
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Arch
 
Net35 Overview
Net35 OverviewNet35 Overview
Net35 Overview
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Hybrid Solution Integration
Hybrid Solution IntegrationHybrid Solution Integration
Hybrid Solution Integration
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 
.Net3.5 Overview
.Net3.5 Overview.Net3.5 Overview
.Net3.5 Overview
 
Biztalk Server 2010: Introdução
Biztalk Server 2010: IntroduçãoBiztalk Server 2010: Introdução
Biztalk Server 2010: Introdução
 
MSDN Dec2007
MSDN Dec2007MSDN Dec2007
MSDN Dec2007
 
Biz talk BI
Biz talk BIBiz talk BI
Biz talk BI
 
Net35 Overview
Net35 OverviewNet35 Overview
Net35 Overview
 
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk Services
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk ServicesGlobal Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk Services
Global Windows Azure Bootcamp – Lisboa - Windows Azure Biztalk Services
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic Languages
 

Dernier

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Dernier (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

Exploring the WCF LOB SDK

  • 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
  • 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

Notes de l'éditeur

  1. 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.
  2. - 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.
  3. 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.
  4. 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.
  5. 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.