DeepZoom demo download – Uploading images and the Auto DeepZoom xap generation

Click here to download the solution

Below is the logical architecture


Click here to download the solution

- visual studio 2008 c# solution includes all the projects. Make sure you have the silverlight 3 tools for visual studi0 2008 installed(


Solution contains the following projects

WebApplication Tier Project

DZWebSite Project – Sample Silverlight 3 App to upload image
DZWebSite.Web Project – Sample html/aspx page to host DZWebSite silverlight control

WCF Service

DataTransferService project – WCF Service which implements IStreamService ServiceContract and UploadFileMessage DataContract

Service Libraries(Windows Service or ConsoleApp)

Utility project – implements a syncqueue and a thread helper
DeepZoomService.Common project - implements DynamicService and FileSystemWatcherBase
DynamicService.cs – implements dynamic windows service using reflection and the configuration file
FileSystemWatcherBase.cs – abstract class for file system
DZService Project – library implements all the services, deepzoom image generation

Windows Service
DeepZoomWindowsService Project – .NET Windows Service functionality same as console app but part of windows SCM

DeepZoom Package

DeepZoom Project – silverlight control without xaml file, responsible for creating MultiScaleImage control and setting the source for deepzoom xml file. You can also inject code at runtime to change the zoom icon or other parameters


DeepZoomConsoleApp Project – Running services in a Console App(easier for debugging), no need to deploy. Instantiates the services as configured in app.config file, by default there are 2 services configured (ImageService and MaintenanceService)

DTServiceConsoleHost Project – test app for testing WCF service


Please do the followings if you just want to run it after downloading

1. create a web site (http://localhost/streamsvs) with physical path set to “\DeepZoomService\DataTransferService\ ” to host WCF Upload Service

2. Create a website with physical path “DZWebSite.Web” to browse to Silverlight client app to upload a file

3. Download for folder structure used by WCF/Windows/Console service to write and process uploaded images. By default, “C:\DeepZoomService\Customers\TestCustomer” is used by WCF service for uploaded files.  “C:\DeepZoomService\Host\TestCustomer” is used by Windows/Console service to generate deepzoom package and the path for testpage

4. Create a site http://localhost/dzpreview/TestCustomer with physical path “C:\DeepZoomService\Host\TestCustomer”, this site is used to host generated deepzoom package in a test page. The link for test page is generated on silverlight client page once the file is uploaded.

5. Execute “\DeepZoomService\DeepZoomConsoleApp\bin\Debug\DeepZoomConsoleApp.exe” to execute the service to monitor the file system and to process the uploaded images to deepzoom package

The best way to start looking into it is by debugging DeepZoomConsoleApp project

  • Ankur says:

    Hey Prashant,

    I tried downloading the sample that you uploaded for Ewan but received “404 – Page not Found” error.

    Could you please once again upload the sample or just email it to me(I believer, you can see my email id.)

    I am primarily interested to see how you have processed the uploaded image for DZI.



    prashant Reply:

    @Ankur, Thanks Ankur, link is updated now


    Ankur Reply:

    @prashant, Thanks for enabling the downloaded link.


    July 13, 2011 at 9:08 am

Your email address will not be published. Required fields are marked *