Tafiti Search Visualization Deployment Guide

This deployment guide is very large (~ 3-4 MB). You can download an XPS of this Wiki Page from here (NOTE: this file may get out of sync with the Wiki).
  • Configuration
    • Windows Live Account Setup
    • Database setup – without Management Tools (SQLCMD)
    • Database setup – with Management Tools
  • Web Application Setup
    • Solution Overview (Projects)
    • Configuring Live ID Web Authentication
    • Configuring Database Connection String
    • Configuring Search API settings
    • Configuring AdCenter Analytics
    • Building the project
  • Executing & Smoke testing
    • Start the project
    • Testing Shelves
  • Deployment options
  • Demonstration Script
    • Demonstration machine configuration
      • Apple Mac
      • PC (Windows Vista/Windows XP)
    • Demonstration Walkthrough
    • FAQ / More information

Server / Development Environment Setup / Pre-requisites

Install the following on your computer (Windows Server 2003, Windows XP, and Windows Vista or later):

Configuration

Windows Live Account Setup

You will need to gain access and/or credentials from each of the following, which will be stored in the Web.config of the Web project:
  • Windows Live Authentication (http://msm.live.com/app) (see the web.config for redirect URLs - http://localhost:50008/WLQuickApps.Tafiti.WebSite/Register.aspx if you are running in local debug mode)
  • Time Lapse in setting up account: Instant
01_WLID.png

Database setup – without Management Tools (SQLCMD)

You can configure the database via the Command Line if you do not have the SQL Server Management Studio installed. This can be done via the SQLCMD command line (tutorial).
  • Open a command prompt and change the directory to:
    • C:\Program Files\Microsoft SQL Server\90\Tools\Binn
  • To connect with the SQL instance type:
    • sqlcmd –S .\SQLExpress
02_SQL_CMD.png
  • Paste the following statement and press ENTER. NOTE: These databases will be created in C:\temp if you wish for them to be created elsewhere modify the script before you paste it into the command window.
CREATE DATABASE Tafiti ON
PRIMARY ( NAME = N'Tafiti', FILENAME = N'c:\temp\Tafiti.mdf' , SIZE = 41984KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON ( NAME = N'Tafiti_log', FILENAME = N'c:\temp\Tafiti_log.ldf' , SIZE = 22144KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO

03_SQL_CMD.png
  • Quit the existing SQLCMD session by typing Quit and press ENTER
04_SQL_CMD.png
  • Create the objects using the Create.sql by using the –i (InputFile) parameter
    • sqlcmd –s .\SQLExpress –i C:\Code\Codeplex\WLQuickApps\WLQuickApps.Tafiti\create.sql
05_SQL_CMD.png
06_SQL_CMD.png

Database setup – with Management Tools (SQL Server Management Studio)

If you have the SQL Server Management Studio installed you can create a new database and configure the tables.
  • Open the SQL Server Management Studio
SQL_MGMT_07.png
  • Create a database called Tafiti
SQL_MGMT_08.png
SQL_MGMT_09.png
  • Run the create.sql script found in the project root to set up the tables NOTE: be sure to run this against the Tafiti database and not the master database.
  • Open the create.sql file in the SQL Management studio (File --> Open --> File) or CTRL+O
SQL_MGMT_10.png
SQL_MGMT_11.png
SQL_MGMT_12.png
  • Click Execute to run the script
SQL_MGMT_13.png
  • See the command has completed successfully

Web Application Setup

The web application has several settings in the web.config which must be configured to make this application successfully execute.
  • Open your development Environment (Visual Web Developer or Visual Studio 2008)
WEB_01.png
  • Open the solution file
WEB_02.png

Solution Overview (Projects)

WEB_03.png
The solution will open with 3 projects:
  • Website – the presentation layer
  • Business – the business layer which stores non presentation specific logic
  • Data – the data layer manages the persistence of objects back into the data provider (in this case SQL Server)

Configuring Live ID Web Authentication

Be sure to update Web.config with the credentials obtained from the Windows Live™ ID configuration steps above. You must copy and paste the Windows Live App ID and the Secret Key
WEB_04.png
WEB_05.png

Configuring Database Connection String

  • Verify the connection string is correct by default it uses .\SQLExpress with Integrated security.
  • You must also copy the connection string into <add name=”Default” as one connection string is used for development tools and another is use for a managed hosting environment.
WEB_06.png

Configuring Search API settings

SEARCH_01.png
SEARCH_02.png
SEARCH_03.png
  • Embed the search API key in the Web.Config
SEARCH_04.png

Configuring AdCenter Analytics

If you have an AdCenter analytics account or would like your usage of Tafiti to be reported set this field. If you don’t want to report usage of the Tafiti code set the field as blank. AdCenter Analytics accounts are not broadly available yet.
ADCENTER_01.png

Building the project

BUILD_01.png

Executing & Smoke testing

To test Tafiti Search Visualization you need to run the code and step over the key areas such as:
  • UX Rendering – does the website render
  • Search API Queries – is the search API accessible and has the API Key been successfully set
  • Authentication – has the Windows Live™ ID Web Authentication been configured correctly
  • Storage – has the SQL database connection string and objects been created/configured correctly.

Start the project

You can either F5 to start debugging or right click on the default.aspx to start the local web server.
DEBUG_01.png
DEBUG_02.png
NOTE: It may take a couple of minutes for the Search API key to become active, during this time you will see: An Error has occurred.
DEBUG_03.png

Testing Shelves

A shelf is a saved set of search results. You can test these by authenticating and dragging search results to the right hand site. This will test the following piece of technology: Live ID authentication, SQL connection & SQL schema.
DEBUG_04.png
DEBUG_05.png
NOTE: If you see this error after authentication means you are redirecting to a different port than the debugger is running on. Change this by selecting the Website project and then the property window and change the dynamic ports to FALSE and 50008
DEBUG_06.png
DEBUG_07.pngDEBUG_08.png
  • Sign in and drag a result onto the right hand side
DEBUG_09.png
  • Close the browser and reopen and sign in and the shelf should be fully populated.
DEBUG_10.png
  • The shelf will be created in the database.
DEBUG_11.png

Deployment options

  • Copy/publish the output of the Web project to the virtual directory set up earlier for Web hosting
  • Run the site in local debug mode (the Web Site has been set to non dynamic ports)

Last edited Feb 27, 2008 at 10:13 AM by Mallik, version 35

Comments

lkuhn65 Sep 11, 2008 at 3:16 PM 
With the 7.1 Jul 24, 2008 code, I get this:
Error 2 Could not load file or assembly 'nStuff.ScriptSharp, Version=0.4.5.0, Culture=neutral, PublicKeyToken=8fc0e3af5abcb6c4' or one of its dependencies. The system cannot find the file specified. C:\Users\lkuhn\Documents\Visual Studio 2008\Projects\WLQuickApps-21556\WLQuickApps.Tafiti\WLQuickApps.Tafiti.WebSite\Web.Config 115

where does nStuff come from?

freezer27 Mar 13, 2008 at 7:42 PM 
me da error de compilación:

CS0234: The type or namespace name 'Business' does not exist in the namespace 'WLQuickApps.Tafiti' (are you missing an assembly reference?)

ya instalé todas las extensiones, pero no se porqué me da ese error.