XML Web Services in Visual Studio ® .NET
XML Web Services in Visual Studio ® .NET. Carlotta Eaton (www.nr.vccs.edu/eaton) Associate Professor of IST New River Community College Slides by Microsoft Modified by Carlotta Eaton. Agenda. Web Service Infrastructure Web Services in Visual Studio .NET Hardcore Web Services.
XML Web Services in Visual Studio ® .NET
E N D
Presentation Transcript
XML Web Services in Visual Studio® .NET Carlotta Eaton (www.nr.vccs.edu/eaton) Associate Professor of IST New River Community College Slides by Microsoft Modified by Carlotta Eaton
Agenda • Web Service Infrastructure • Web Services in Visual Studio .NET • Hardcore Web Services
Session Prerequisites • Familiarity with Client/Server or Web Development Level 200
Agenda • Web Service Infrastructure • Web Services in Visual Studio .NET • Hardcore Web Services
ASMX Web Service InfrastructureWhat makes a Web Service? • Web Service (ASMX in ASP .NET) • Invoke Web Service methods
ASMX WSDL Web Service InfrastructureWhat makes a Web Service? • Web Service (ASMX in ASP+) • Invoke Web Service methods • Web Service Description Language (WSDL) • Describe Web Services • Describes dependencies (e.g., DataSets / XSD) XSD
ASMX WSDL WSDL DISCO Web Service InfrastructureWhat makes a Web Service? • Web Service (ASMX in ASP+) • Invoke Web Service methods • Web Service Description Language (WSDL) • Describe Web Services • Describes dependencies (e.g., DataSets / XSD) • Discovery Documents (DISCO) • Publish Web Services XSD
ASMX WSDL WSDL DISCO DISCO UDDI Web Service InfrastructureWhat makes a Web Service? • Web Service (ASMX in ASP+) • Invoke Web Service methods • Web Service Description Language (WSDL) • Describe Web Services • Describes dependencies (e.g., DataSets / XSD) • Discovery Documents (DISCO) • Publish Web Services • UDDI XSD
Web Service InfrastructureProtocols • Basic: HTTP Get and HTTP Post • Primitives (integers, strings, etc) • Arrays of primitives • Default: Simple Object Access Protocol (SOAP) • Structures • Enumerations • Classes • XML DataSets • Arrays of anything
Agenda • Web Service Infrastructure • Web Services in Visual Studio .NET • Hardcore Web Services
Web Services in Visual Studio .NETTools • On the Server Side • Generates WSDL • Generates .vsdisco • Generates HTML text page • Supports breakpoints, tracing, etc. • On the Client Side • Generates proxy class with sync and async calls • Supports “Step-Into” across web service call
Agenda • Web Service Infrastructure • Web Services in Visual Studio .NET • Hardcore Web Services
Hard Core Web ServicesASP .NET Intrinsics • Request • Server Variables (Host Address, Host Name) • Cookies • Security (Client Certificate, Authentication, Encryption) • User • Identity • Role • Session and Application • State • Response • Cookies • Cache
Hard Core Web ServicesSecurity • Basic, Digest, Passport, Kerberos, and Windows authentication • “Roll your own” authentication • HTTPS / SSL encryption • Supports many business models • Secure ecommerce transactions • Pay per use • Subscription
Hard Core Web ServicesAsynchronous Calls • Synchronous Programming Model • Foo(Param1, Param2) As String • Asynchronous Programming Model • BeginFoo(Param1, Param2, Callback) • Callback(AsyncResult) • EndFoo(AsyncResult) As String
Hard Core Web ServicesSOAP Headers - Server • Make a Class That Inherits SoapHeader • Add Custom Properties • Associate This With Your Web Service Public Class MyHeader : Inherits SoapHeader Public Username As String Public Password As String End Class
Hard Core Web ServicesSOAP Headers - Client • Create Instance of the Header Class • Populate With Values • Attach To Web Service Object • Call Method WebServ ws = new WebServ(); MyHeader a = new MyHeader(); a.Username = "admin"; a.Password = "password"; ws.MyHeader = a; ws.DoSomething();
Hard Core Web ServicesSoapExtension • Used for More Advanced Functionality • Intercept Calls to a Web Service • Pre and Post Processing
Session Summary • Web Services Are The Building Blocks For The Next Generation Of The Internet • Gives Client Access to any kind of Data • Make Business-to-Business Easy • Visual Studio .NET Provides Great Tools
For More Information… • MSDN Web site at • msdn.microsoft.com • Microsoft® Official Curricula (MOC) • MOC 2063 • Building ASP .NET Applications • MOC 2145 • Programming the Microsoft .NET Framework with Visual Basic® .NET • MOC 2349 • Programming the Microsoft .NET Framework with C#
MSDNEssential Resources for Developers Subscription Services Library, Professional, Universal Delivered via CD-ROM, DVD, Web OnlineInformation MSDN Online, MSDN Flash Training & Events MSDN Training, Tech-Ed, PDC, Developer Days, MSDN/Onsite Events Print Publications MSDN Magazine MSDN News MembershipPrograms MSDN User Groups