"PetShop" tutorial
PetShop application Running ASPX based applications

## Overview

The PetShop application developed by Microsoft using ASP .Net and C# used in this tutorial is another demonstration of Virtuoso's ability to host ASP .Net projects. This ASP .Net data driven shopping cart application for browsing and adopting Pets utilizes Virtuoso's 3rd Party hosting feature as well as the Virtuoso database as the data store.

This demonstration is completely configurable and can be modified easily to change the data store to Microsoft SQL Server.

## Prerequisites

The following prerequisites should be used to make sure your computer has the appropriate operating system and software to demonstrate the PetShop application using Virtuoso running on the Windows.

- Windows 2000/XP
- Virtuoso Universal Servers Microsoft ASP .Net enabled binary
- Microsoft ASP .Net Framework SDK

## Installation and Configuration

This demonstration is based on the Virtuoso Universal Server running in a Windows operating system environment and includes configuration steps to run the PetShop application. If you have installed the demonstration database and have an environment already running the Virtuoso demo instance, the SQL scripts and configuration files are already loaded and the virtual directory has been created as part of the installation.

If you are not running in this environment perform the following steps to demonstrate the PetShop Application

1. In the folder vsp/Petshop under the Virtuoso Universal Server installation directory unpack and extract the OLEDB the .ZIP archive.
2. Register the PetShop.Components.dll as COM object using regsvcs utility, which is required to start the application.
3. Create the PetShop database schemas (MSPetShop and MSPetShopOrders), including tables and stored procedures and populate the databases using the following supplied SQL scripts located in the PetShop\DatabaseScripts\SQL subdirectory. These scripts can be loaded using the OpenLink Virtuoso Interactive SQL Interface (ISQL) tool available from the OpenLink Virtuoso start menu using the DBA account.
   - CreateDBLogin1.sql
   - CreateTables1.sql
   - CreateTables2.sql
   - LoadTables1.sql
4. Define a new virtual directory pointing to the (HTTP root)/PetShop/Web. (For instructions on creating an executable virtual directory see the Web applications tutorials (LINK))
5. Edit two connection strings in Web.config file which is located under the vsp/PetShop/Web directory. Add two entries with same values for the address set to the Virtuoso server location (host name and ODBC/SQL port), the account and password (UID and PWD) and the change the name of each of the databases; one for "MSPetShop" and one for MSPetShopOrders the appSettings section, key="ConnectionString" element

   Example:

                       <add key="ConnString1" value="HOST=localhost:1112;UID=petshop;PWD=password;Database=MSPetShop" />
                       <add key="ConnString2"value="HOST=localhost:1112;UID=petshop;PWD=password;Database=MSPetShopOrders" />

Once configured, the PetShop application Web UI will be accessible from the URL http://[host:port]/PetShop/

## Configuration Options

Database

The PetShop application is designed to be configurable and is easily modified. Should you choose to switch the database data store to Microsoft SQL Server, you will need to install the complete PetShop application, which can be downloaded from http://www.gotdotnet.com/team/compare/petshop.aspx.

## Limits/Restrictions

In Virtuoso, the PetShop application is available only with .NET provider.