Tailspin Toys Application
The Tailspin Toys application demonstrates how the various technologies available in Visual Studio .NET can be used together in an Enterprise application. The application demonstrates a simple transacted ordering system internal to a company, arbitrarily chosen as airplane parts.
The application is a multitier application with a browser client, a Web server, server components, and a database tier. In addition, business-to-business (B2B) communication with an external vendor that accepts orders via an XML Web service is demonstrated.
Installing Tailspin Toys
The Tailspin Toys application can be found at Samples\VCSharp\General\Tailspin on the MSDN CD (disk 1) or DVD. It is packaged as a self-extracting executable file containing two installation files (.msi) that contain Visual Studio solutions and accompanying documentation.
The application consists of ATL Server-based Web applications used for ordering parts and for fulfilling orders from a warehouse, a message-queue–based order-handling system written in Visual C# running as a Windows Service and using serialization to convert XML messages to and from objects, a SQL 2000 database using SQL XML and OLE DB, a transactional accounting system based on Visual C# ServicedComponents, a Visual C# Web Forms application, and business-to-business communication using XML Web services with a separate vendor site.
Features demonstrated include:
- ATL Server Web application using database session management
- Visual C# Web Forms application using ADO.NET
- Transacted, stateless account management using Visual C# ServicedComponents and ADO.NET
- Use of MSMQ to implement an order-handling system
- Use of Visual C# Windows Service to process MSMQ messages
- Use of MSXML Document Object Model (DOM)
- XML Web services used for business-to-business communication
- COM Interop from Visual C#
- Use of SQL 2000 XML support via OLE DB
- Interop of native COM+ and managed ServicedComponents
- Serialization of common language runtime objects as XML
- Secure logins using password encryption