Chapter 13: An Example Web Service Client

Size: px
Start display at page:

Download "Chapter 13: An Example Web Service Client"

Transcription

1 page 1 Chapter 13: An Example Web Service Client In this chapter, we are going to build a client web application that uses a free web service called Terraserver. Terraserver is a site run by Microsoft and the United States Geographical Service to supply mapping and aerial photo imagery of the USA. From our perspective, Terraserver has the advantage of being free to the user - not suprisingly, a lot of web service owners are trying to make money from their intellectual property so it can be difficult to find examples of actual services that can be used freely in examples without a lot of trouble. You can find the Terraserver example in various forms in various places on the internet and elsewhere: for example in Jeff Prosise's text Programming Microsoft.NET (which I believe is the original source), \ Microsoft's web site and the Terraserver web site among others. I'm not linking to them because several of the versions you can find use.net 1.1 and Terraserver version 1, both of which are now out of date and will not work. (We are using the current version - version 2.) This used to be an impressive example - until Google Earth... However, it is still quite good - especially considering that there is very little code. You can download the code using the links below - note that because they were copied straight from Visual Studio, you may need to edit them a bit to get them to work! Note: At the time of writing (early March 2010) TerraServer had changed the name of it's webservice to MSRMaps. The old name is currently working, in that you can link to and compile applications as described below CityView.aspx CityView.aspx.cs Class.ashx Terraserver You can find Terraserver at The actual site provides much more than just the web service, but is the starting point for us, and links to extensive documentation - both on the methods supported and the data structures used. To get a list of the methods supported, you can also go to And of course you can view the WSDL file by adding `?wsdl' to the end, which - if you are prepared to read it - will also tell you about the methods and data structures. Much easier to read the documentation though Basic Terraserver Concepts Terraserver deals with image tiles which are 200 pixel square chunks. To construct a map, or image, you normally need to retrieve more than one tile and assemble them. The basic method for retrieving tile data is GetTile - however, before you call this you need to work out which tile, or tiles you need. This could involve a number of steps, depending on the type of application - in our case, the following is necessary. Convert Place Data to Lat Lon Data. Our web application will require users to select a place, the state it is in, and a scale. We must first call ConvertPlaceToLonLatPt to get the latitute and longitude of the point. Of course, we may have entered a place that does not exist. ConvertPlaceToLonLatPt needs a Place data structure as a parameter, which we construct from the place and state information. There is quite an extensive database of places and their locations - certainly all the 'common' ones you try should work (though be aware of spelling issues). Get the Bounding Box. We will now have a LatLonPt structure, telling where the place is - but we need to get data for an area, not a point - and the size of the area depends on the scale. Calling GetAreaFromPt will return an AreaBoundingBox object. Iteratively Get Tiles. Finally, we need to actually retrieve the data we need by repeatedly calling GetTile. This needs a pair of nested loops to get the tiles in two dimensions The Web Form You can see the inteface in Fig 1.

2 page 2 Fig.1. The Terraserver Client Window The actual code for this is below, with non-helpful stuff omitted. <form id="form1" runat="server"> <table cellpadding="8" style="width: 785px; HEIGHT: 237px"> <tr> <td>place </td> <td><asp:textbox id="place" runat="server" Width="296px"></ asp:textbox></td> <td>state</td> <td> <asp:dropdownlist id="state" runat="server" Width="153px"> <asp:listitem Text="AL"/> <asp:listitem Text="AK" /> <asp:listitem Text="AR"/>... <asp:listitem Text="WV"/> <asp:listitem Text="WY"/> </asp:dropdownlist></td> <td>theme</td> <td> <asp:dropdownlist ID="ThemeList" runat="server" Width="96px"> <asp:listitem Text="Photo"/> <asp:listitem Text="Topo"/> <asp:listitem Text="Relief"/> </asp:dropdownlist></td>

3 page 3 </tr> <tr> <td><asp:requiredfieldvalidator id="requiredfieldvalidator1" runat="server" ForeColor="red" Display="static" ErrorMessage="*" ControlToValidate="Place" Width="152px"></ asp:requiredfieldvalidator></td> <td> <fieldset><legend>scale</legend><asp:radiobuttonlist id="scalebuttons" runat="server" RepeatDirection="Horizontal" RepeatColumns="2"> <asp:listitem Text="1 meter"/> <asp:listitem Text="2 meters"/> <asp:listitem Text="4 meters"/> <asp:listitem Text="8 meters" Selected="true"/> <asp:listitem Text="16 meters"/> <asp:listitem Text="32 meters"/> </asp:radiobuttonlist></fieldset> </td> <td></td> </tr> <tr> <td></td> <td><asp:button id="button1" runat="server" Width="100%" Text="Show Image" onclick="button1_click"></asp:button></td> <td></td> </tr> </table> </form> <asp:image id="myimage" RunAt="server"></asp:image> </body> </html> There are only really a couple of things of interest here that we have not seen. The first is the required field validator to ensure the place field is not empty. The second is that the image: <asp:image id="myimage" RunAt="server"></asp:image> Does not apparently contain any data. That is because our application is going to programmatically supply this later. The rest of it should be pretty obvious - a couple of dropdown lists (one for the state, another for the type of data - most of which I've deleted because it's very long) and one for the theme (you can retrieve topographic and relief images as well as just photos); a set of radio buttons (for scale); and a textbox for the placename The Code At the top of the code file you will find a load of using statements: using System; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq;

4 page 4 using System.Collections; using System.ComponentModel; using System.Drawing; using System.Web.SessionState; using System.Drawing.Imaging; using System.IO; using com.terraserverusa.www; Most of these are obviously to do with web controls and graphics - but using com.terraserverusa is the web service namespace. We'll talk about this later. As usual, the business logic for this application is in a separate file - and this is what is called when you click the button on the form: protected void Button1_Click(object sender, EventArgs e) string place = Place.Text; string state = State.SelectedItem.Text; int theme; switch (ThemeList.SelectedIndex) default: case 0: theme = 1; case 1: theme = 1; case 2: theme = 3; ProcessImageRequest(place, state, ScaleButtons.SelectedIndex, theme); MyImage.ImageUrl = "Class1.ashx"; Data is read from the form elements, manipulated as necessary, and then we call ProcessImageRequest which is going to do the work - the last line: MyImage.ImageUrl = "Class1.ashx"; looks a bit wierd though. Class1.ashx is a HTTP Handler that will generate HTTP formatted data, and which is something we haven't seen yet. In this case we are using it to wrap the image data to be displayed in HTTP, and telling the (initially empty) image to source its data from their. We will get back to this later. public void ProcessImageRequest(string place, string state, int scale, int theme) if (place!= null && state!= null) // Determine the scale Scale res = Scale.Scale8m; switch (scale) case 0: res = Scale.Scale1m;

5 page 5 case 1: res = Scale.Scale2m; // Rest deleted 600); // Generate the requested image ImageFormat format = ImageFormat.Jpeg; Bitmap bitmap = GetTiledImage(place, state, theme, res, 900, // If GetTiledImage failed, generate an error bitmap if (bitmap == null) bitmap = GetErrorImage(); //type = "image/gif"; format = ImageFormat.Gif;//Might not be needed // Write the image to the HTTP response bitmap.save("c:\\temp\\testimage.jpg"); // Clean up and return bitmap.dispose(); ProcessImageRequest creates a bitmap image by calling a further method GetTiledImage. It is possible that the image construction failed (for example, if you entered a place that does not exist, or the service is down). In that case, we return an image containing the text `Error'. (You can download that here.) Finally, we save the image in a temporary file as a JPEG and get rid of the bitmap object. Most of the work is done in GetTiledImage, which looks bad (though you don't need to worry about the details): scale, Bitmap GetTiledImage(string City, string State, int theme, Scale int cx, int cy) Bitmap bitmap = null; Graphics g = null; try // Instantiate the TerraService proxy TerraService ts = new TerraService(); // Get the latitude and longitude of the requested place Place place = new Place(); place.city = City; place.state = State; place.country = "USA"; LonLatPt point = ts.convertplacetolonlatpt(place);

6 page 6 // Compute the parameters for a bounding box AreaBoundingBox abb = ts.getareafrompt(point, theme, scale, cx, cy); // Create an image to fit the bounding box bitmap = new Bitmap(cx, cy, PixelFormat.Format32bppRgb); g = Graphics.FromImage(bitmap); int x1 = abb.northwest.tilemeta.id.x; int y1 = abb.northwest.tilemeta.id.y; int x2 = abb.northeast.tilemeta.id.x; int y2 = abb.southwest.tilemeta.id.y; for (int x = x1; x <= x2; x++) for (int y = y1; y >= y2; y--) TileId tid = abb.northwest.tilemeta.id; tid.x = x; tid.y = y; System.Drawing.Image tile = System.Drawing.Image.FromStream (new MemoryStream(ts.GetTile(tid))); g.drawimage(tile, (x - x1) * tile.width - (int)abb.northwest.offset.xoffset, (y1 - y) * tile.height - (int)abb.northwest.offset.yoffset, tile.width, tile.height); tile.dispose(); // Return the image return bitmap; catch (Exception) if (bitmap!= null) bitmap.dispose(); return null; finally if (g!= null) g.dispose(); This method: instantiates the web service proxy; converts the place data to latitude-longitude data; gets the bounding box of the map or photo we want; and then fetches all the necessary tiles, assembling them into a bitmap, using a pair of nested loops. The precise details are not particularly important to us here - we're more interested in the actual web service infrastructure. The only remaining method returns the error image file, which we will omit The HTTP Handler

7 page 7 At this point we have saved the image data in a file but we have not managed to put in on the page. There are a few ways to do this and we are going to use an HTTP Handler. HTTP Handlers generated HTTP formatted data, so they can be used in pages where you might put, say, an image URL dynamically - which is what we want in this case. HTTP Handlers are definable in a couple of ways - one is to register them by editing the web.config file. The other, which we will use, is to create a.ashx file with a line like this: <%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Drawing; using System.Drawing.Imaging; using System.Web; using System.IO; public class Handler : IHttpHandler public void ProcessRequest (HttpContext context) Bitmap bitmap = new Bitmap("C:\\Temp\\testImage.jpg"); context.response.contenttype = "image/jpeg"; ImageFormat format = ImageFormat.Jpeg; bitmap.save(context.response.outputstream, format); bitmap.dispose(); public bool IsReusable get return false; HTTP Handlers must implement the IHttpHander interface, which has two members: ProcessRequest and IsReusable. IsReusable is a property that controls whether another request could use the same handler - in our case it is yes though it does not in practice here make any difference (it will still work with false). ProcessRequest actually generates the output, and will be called when the web browser viewing the page requests the image. The image is read from the file. Then we set the mime type of the HTTP response to `image/jpeg', create a format object to tell Bitmap's save method how to save the data, and send it all via an OutputStream to the requesting browser. We've linked the (initially empty) image where the result is going to appear to the HTTP Handler - so the handler basically 'inserts' the appropriate image data onto the web page Adding the Web Reference Unlike our previous examples, we need to direct our application to a web service running on a remote host. To do this, when we add the web reference by actually entering the URL of the service. In this case: or the new name Once you've done this, Visual Studio will helpfully tell you that the namespace you need to use is: com.terraserverusa or, if using the new name com.msrmaps The actual name is mirrored by the folder structure in the Web References directory of the web site project that Visual Studio uses. So if you forget, you can navigate to this directory (either in Visual Studio or just in the file system) and you should find a folder called com and within that a folder called terraserverusa which

8 contains the actual WSDL file. From this folder structure, you can infer the namespace you need to use in your code. page 8

ASP.NET Pearson Education, Inc. All rights reserved.

ASP.NET Pearson Education, Inc. All rights reserved. 1 ASP.NET 2 Rule One: Our client is always right. Rule Two: If you think our client is wrong, see Rule One. Anonymous 3 25.1 Introduction ASP.NET 2.0 and Web Forms and Controls Web application development

More information

ASP.NET Security. 7/26/2017 EC512 Prof. Skinner 1

ASP.NET Security. 7/26/2017 EC512 Prof. Skinner 1 ASP.NET Security 7/26/2017 EC512 Prof. Skinner 1 ASP.NET Security Architecture 7/26/2017 EC512 Prof. Skinner 2 Security Types IIS security Not ASP.NET specific Requires Windows accounts (NTFS file system)

More information

Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init Option Strict On Imports System.Drawing.Imaging Imports System.Drawing Imports System Imports System.Collections Imports System.Configuration Imports System.Data Imports System.IO Imports System.Web Imports

More information

Insert Data into Table using C# Code

Insert Data into Table using C# Code Insert Data into Table using C# Code CREATE TABLE [registration]( [roll_no] [int] NULL, [name] [varchar](50), [class] [varchar](50), [sex] [varchar](50), [email] [varchar](50))

More information

MOSS2007 Write your own custom authentication provider (Part 4)

MOSS2007 Write your own custom authentication provider (Part 4) MOSS2007 Write your own custom authentication provider (Part 4) So in the last few posts we have created a member and role provider and configured MOSS2007 to use this for authentication. Now we will create

More information

In the previous chapter we created a web site with images programmed into HTML page code using commands such as: <img src="images/train.

In the previous chapter we created a web site with images programmed into HTML page code using commands such as: <img src=images/train. Chapter 6: Mountain Bike Club 113 6 Mountain Bike Club In the previous chapter we created a web site with images programmed into HTML page code using commands such as: In

More information

Chapter 2 How to develop a one-page web application

Chapter 2 How to develop a one-page web application Chapter 2 How to develop a one-page web application Murach's ASP.NET 4.5/C#, C2 2013, Mike Murach & Associates, Inc. Slide 1 The aspx for a RequiredFieldValidator control

More information

Create your own Meme Maker in C#

Create your own Meme Maker in C# Create your own Meme Maker in C# This tutorial will show how to create a meme maker in visual studio 2010 using C#. Now we are using Visual Studio 2010 version you can use any and still get the same result.

More information

3 Customer records. Chapter 3: Customer records 57

3 Customer records. Chapter 3: Customer records 57 Chapter 3: Customer records 57 3 Customer records In this program we will investigate how records in a database can be displayed on a web page, and how new records can be entered on a web page and uploaded

More information

How to create a simple ASP.NET page to create/search data on baan using baan logic from the BOBS client sample.

How to create a simple ASP.NET page to create/search data on baan using baan logic from the BOBS client sample. How to create a simple ASP.NET page to create/search data on baan using baan logic from the BOBS client sample. Author: Carlos Kassab Date: July/24/2006 First install BOBS(BaaN Ole Broker Server), you

More information

Advanced UI Customization for Microsoft CRM

Advanced UI Customization for Microsoft CRM Advanced UI Customization for Microsoft CRM Hello Microsoft CRM Gurus! Today I would like to show you some really cute tricks how to extend the User Interface (UI) of Microsoft CRM. There are great tools

More information

CST272 Getting Started Page 1

CST272 Getting Started Page 1 CST272 Getting Started Page 1 1 2 3 4 5 6 8 Introduction to ASP.NET, Visual Studio and C# CST272 ASP.NET Static and Dynamic Web Applications Static Web pages Created with HTML controls renders exactly

More information

BİLGİLERİN GRIDVIEW İÇERİSİNDE EKLENMESİ, DÜZENLENMESİ VE SİLİNMESİ

BİLGİLERİN GRIDVIEW İÇERİSİNDE EKLENMESİ, DÜZENLENMESİ VE SİLİNMESİ BİLGİLERİN GRIDVIEW İÇERİSİNDE EKLENMESİ, DÜZENLENMESİ VE SİLİNMESİ default.aspx

More information

You can call the project anything you like I will be calling this one project slide show.

You can call the project anything you like I will be calling this one project slide show. C# Tutorial Load all images from a folder Slide Show In this tutorial we will see how to create a C# slide show where you load everything from a single folder and view them through a timer. This exercise

More information

ASP.NET - MULTI THREADING

ASP.NET - MULTI THREADING ASP.NET - MULTI THREADING http://www.tutorialspoint.com/asp.net/asp.net_multi_threading.htm Copyright tutorialspoint.com A thread is defined as the execution path of a program. Each thread defines a unique

More information

Downloading and importing DEM data from ASTER or SRTM (~30m resolution) into ArcMap

Downloading and importing DEM data from ASTER or SRTM (~30m resolution) into ArcMap Downloading and importing DEM data from ASTER or SRTM (~30m resolution) into ArcMap Step 1: ASTER or SRTM? There has been some concerns about the quality of ASTER data, nicely exemplified in the following

More information

Dr.Qadri Hamarsheh. Overview of ASP.NET. Advanced Programming Language (630501) Fall 2011/2012 Lectures Notes # 17. Data Binding.

Dr.Qadri Hamarsheh. Overview of ASP.NET. Advanced Programming Language (630501) Fall 2011/2012 Lectures Notes # 17. Data Binding. Advanced Programming Language (630501) Fall 2011/2012 Lectures Notes # 17 Data Binding Outline of the Lecture Code- Behind Handling Events Data Binding (Using Custom Class and ArrayList class) Code-Behind

More information

8 Library loan system

8 Library loan system Chapter 8: Library loan system 153 8 Library loan system In previous programs in this book, we have taken a traditional procedural approach in transferring data directly between web pages and the ASP database.

More information

IDoc based adapterless communication between SAP NetWeaver Application Server (SAP NetWeaver AS) and Microsoft BizTalk Server

IDoc based adapterless communication between SAP NetWeaver Application Server (SAP NetWeaver AS) and Microsoft BizTalk Server Collaboration Technology Support Center Microsoft Collaboration Brief August 2005 IDoc based adapterless communication between SAP NetWeaver Application Server (SAP NetWeaver AS) and Microsoft BizTalk

More information

Activating AspxCodeGen 4.0

Activating AspxCodeGen 4.0 Activating AspxCodeGen 4.0 The first time you open AspxCodeGen 4 Professional Plus edition you will be presented with an activation form as shown in Figure 1. You will not be shown the activation form

More information

Introduction & Controls. M.Madadyar.

Introduction & Controls. M.Madadyar. Introduction & Controls M.Madadyar. htt://www.students.madadyar.com ASP.NET Runtime Comilation and Execution default.asx Which language? C# Visual Basic.NET C# comiler Visual Basic.NET comiler JIT comiler

More information

CALCULATOR APPLICATION

CALCULATOR APPLICATION CALCULATOR APPLICATION Form1.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;

More information

Web Forms User Security and Administration

Web Forms User Security and Administration Chapter 7 Web Forms User Security and Administration In this chapter: Administering an ASP.NET 2.0 Site...................................... 238 Provider Configuration................................................

More information

What is ASP.NET? ASP.NET 2.0

What is ASP.NET? ASP.NET 2.0 What is ASP.NET? ASP.NET 2.0 is the current version of ASP.NET, Microsoft s powerful technology for creating dynamic Web content. is one of the key technologies of Microsoft's.NET Framework (which is both

More information

Introduction to ASP.NET

Introduction to ASP.NET Introduction to ASP.NET 1 ASP.NET ASP.NET is a managed framework that facilitates building server-side applications based on HTTP, HTML, XML and SOAP. To.NET developers, ASP.NET is a platform that provides

More information

Lecture 8 Building an MDI Application

Lecture 8 Building an MDI Application Lecture 8 Building an MDI Application Introduction The MDI (Multiple Document Interface) provides a way to display multiple (child) windows forms inside a single main(parent) windows form. In this example

More information

INTRODUCTION & IMPLEMENTATION OF ASP.NET

INTRODUCTION & IMPLEMENTATION OF ASP.NET INTRODUCTION & IMPLEMENTATION OF ASP.NET CONTENTS I. Introduction to ASP.NET 1. Difference between ASP and ASP.NET 2. Introduction to IIS 3. What is Web Application? Why is it used? II. Implementation

More information

Siteforce Pilot: Best Practices

Siteforce Pilot: Best Practices Siteforce Pilot: Best Practices Getting Started with Siteforce Setup your users as Publishers and Contributors. Siteforce has two distinct types of users First, is your Web Publishers. These are the front

More information

Eyes of the Dragon - XNA Part 37 Map Editor Revisited

Eyes of the Dragon - XNA Part 37 Map Editor Revisited Eyes of the Dragon - XNA Part 37 Map Editor Revisited I'm writing these tutorials for the XNA 4.0 framework. Even though Microsoft has ended support for XNA it still runs on all supported operating systems

More information

CSC 415 ONLINE PHOTOALBUM: THE SEQUEL ASP.NET VERSION

CSC 415 ONLINE PHOTOALBUM: THE SEQUEL ASP.NET VERSION CSC 415 ONLINE PHOTOALBUM: THE SEQUEL ASP.NET VERSION GODFREY MUGANDA In this project, you will convert the Online Photo Album project to run on the ASP.NET platform, using only generic HTTP handlers.

More information

Developing User Controls in EPiServer

Developing User Controls in EPiServer Developing User Controls in EPiServer Abstract It is recommended that developers building Web sites based on EPiServer create their own user controls with links to base classes in EPiServer. This white

More information

Quick Guide for the ServoWorks.NET API 2010/7/13

Quick Guide for the ServoWorks.NET API 2010/7/13 Quick Guide for the ServoWorks.NET API 2010/7/13 This document will guide you through creating a simple sample application that jogs axis 1 in a single direction using Soft Servo Systems ServoWorks.NET

More information

XNA 4.0 RPG Tutorials. Part 24. Level Editor Continued

XNA 4.0 RPG Tutorials. Part 24. Level Editor Continued XNA 4.0 RPG Tutorials Part 24 Level Editor Continued I'm writing these tutorials for the new XNA 4.0 framework. The tutorials will make more sense if they are read in order. You can find the list of tutorials

More information

The contents of this document are directly taken from the EPiServer SDK. Please see the SDK for further technical information about EPiServer.

The contents of this document are directly taken from the EPiServer SDK. Please see the SDK for further technical information about EPiServer. Web Services Product version: 4.50 Document version: 1.0 Document creation date: 04-05-2005 Purpose The contents of this document are directly taken from the EPiServer SDK. Please see the SDK for further

More information

How to get Intellisense with AVR in your Web app s global.asax

How to get Intellisense with AVR in your Web app s global.asax This document applies to: AVR for.net, all versions Document revision V1.0 Document date 5 August 2011 Category AVR IDE Abstract Global.asax doesn t play along well with Intellisense. This article shows

More information

Employee Attendance System module using ASP.NET (C#)

Employee Attendance System module using ASP.NET (C#) Employee Attendance System module using ASP.NET (C#) Home.aspx DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

More information

Assignment 1: grid. Due November 20, 11:59 PM Introduction

Assignment 1: grid. Due November 20, 11:59 PM Introduction CS106L Fall 2008 Handout #19 November 5, 2008 Assignment 1: grid Due November 20, 11:59 PM Introduction The STL container classes encompass a wide selection of associative and sequence containers. However,

More information

质量更高服务更好 半年免费升级服务.

质量更高服务更好 半年免费升级服务. IT 认证电子书 质量更高服务更好 半年免费升级服务 http://www.itrenzheng.com Exam : 70-515 Title : TS: Web Applications Development with Microsoft.NET Framework 4 Version : Demo 1 / 13 1.You are implementing an ASP.NET application

More information

CST272 Getting Started Page 1

CST272 Getting Started Page 1 CST272 Getting Started Page 1 1 2 3 5 6 8 10 Introduction to ASP.NET and C# CST272 ASP.NET ASP.NET Server Controls (Page 1) Server controls can be Buttons, TextBoxes, etc. In the source code, ASP.NET controls

More information

XML with.net: Introduction

XML with.net: Introduction XML with.net: Introduction Extensible Markup Language (XML) strores and transports data. If we use a XML file to store the data then we can do operations with the XML file directly without using the database.

More information

A short introduction to Web Services

A short introduction to Web Services 1 di 5 17/05/2006 15.40 A short introduction to Web Services Prev Chapter Key Concepts Next A short introduction to Web Services Since Web Services are the basis for Grid Services, understanding the Web

More information

Creating SDK plugins

Creating SDK plugins Creating SDK plugins 1. Introduction... 3 2. Architecture... 4 3. SDK plugins... 5 4. Creating plugins from a template in Visual Studio... 6 5. Creating custom action... 9 6. Example of custom action...10

More information

OS Property Ajax search module

OS Property Ajax search module OS Property Ajax search module By Ossolution Version 1.0 [Updated: March 2013] Introduction This extension dramatically changes your concept about the search modules. Fancy design, real-time working and

More information

Your First Windows Form

Your First Windows Form Your First Windows Form From now on, we re going to be creating Windows Forms Applications, rather than Console Applications. Windows Forms Applications make use of something called a Form. The Form is

More information

Variables One More (but not the last) Time with feeling

Variables One More (but not the last) Time with feeling 1 One More (but not the last) Time with feeling All variables have the following in common: a name a type ( int, float, ) a value an owner We can describe variables in terms of: who owns them ( Processing

More information

Creating a Top Records Report Filter in Sitecore OMS

Creating a Top Records Report Filter in Sitecore OMS Creating a Top Records Report Filter in Sitecore OMS Introduction Welcome to my third Sitecore blog on creating OMS reports. In this post, I will create a top filter that limits the records displayed in

More information

So far, Wednesday, February 03, :47 PM. So far,

So far, Wednesday, February 03, :47 PM. So far, Binding_and_Refinement Page 1 So far, 3:47 PM So far, We've created a simple persistence project with cloud references. There were lots of relationships between entities that must be fulfilled. How do

More information

The Open Core Interface SDK has to be installed on your development computer. The SDK can be downloaded at:

The Open Core Interface SDK has to be installed on your development computer. The SDK can be downloaded at: This document describes how to create a simple Windows Forms Application using some Open Core Interface functions in C# with Microsoft Visual Studio Express 2013. 1 Preconditions The Open Core Interface

More information

v SMS 12.3 Tutorial Import From Web Requirements Internet connection Time minutes Prerequisites None Objectives

v SMS 12.3 Tutorial Import From Web Requirements Internet connection Time minutes Prerequisites None Objectives SMS 12.3 Tutorial Import from Web v. 12.3 Objectives This tutorial gives an overview of the Importing from Web option offered by SMS. This option connects SMS to a web based program that adds additional

More information

Chris' Makefile Tutorial

Chris' Makefile Tutorial Chris' Makefile Tutorial Chris Serson University of Victoria June 26, 2007 Contents: Chapter Page Introduction 2 1 The most basic of Makefiles 3 2 Syntax so far 5 3 Making Makefiles Modular 7 4 Multi-file

More information

We are going to use some graphics and found a nice little batman running GIF, off course you can use any image you want for the project.

We are going to use some graphics and found a nice little batman running GIF, off course you can use any image you want for the project. C# Tutorial - Create a Batman Gravity Run Game Start a new project in visual studio and call it gravityrun It should be a windows form application with C# Click OK Change the size of the to 800,300 and

More information

Client Side JavaScript and AJAX

Client Side JavaScript and AJAX Client Side JavaScript and AJAX Client side javascript is JavaScript that runs in the browsers of people using your site. So far all the JavaScript code we've written runs on our node.js server. This is

More information

Terratype Umbraco Multi map provider

Terratype Umbraco Multi map provider Terratype Umbraco Multi map provider Installation Installing via Nuget This Umbraco package can be installed via Nuget The first part is the Terratype framework, which coordinates the different map providers,

More information

Start Visual Studio, start a new Windows Form project under the C# language, name the project BalloonPop MooICT and click OK.

Start Visual Studio, start a new Windows Form project under the C# language, name the project BalloonPop MooICT and click OK. Start Visual Studio, start a new Windows Form project under the C# language, name the project BalloonPop MooICT and click OK. Before you start - download the game assets from above or on MOOICT.COM to

More information

We are assuming you have node installed!

We are assuming you have node installed! Node.js Hosting We are assuming you have node installed! This lesson assumes you've installed and are a bit familiar with JavaScript and node.js. If you do not have node, you can download and install it

More information

Web Server Project. Tom Kelliher, CS points, due May 4, 2011

Web Server Project. Tom Kelliher, CS points, due May 4, 2011 Web Server Project Tom Kelliher, CS 325 100 points, due May 4, 2011 Introduction (From Kurose & Ross, 4th ed.) In this project you will develop a Web server in two steps. In the end, you will have built

More information

Screenshots Made Easy

Screenshots Made Easy Screenshots Made Easy Welcome to the simplest screenshot tutorial ever. We'll be using the simplest graphic editing tool ever: Microsoft Paint. The goal of this tutorial is to get you making your own screenshots

More information

This is the empty form we will be working with in this game. Look under the properties window and find the following and change them.

This is the empty form we will be working with in this game. Look under the properties window and find the following and change them. We are working on Visual Studio 2010 but this project can be remade in any other version of visual studio. Start a new project in Visual Studio, make this a C# Windows Form Application and name it zombieshooter.

More information

Web Forms ASP.NET. 2/12/2018 EC512 - Prof. Skinner 1

Web Forms ASP.NET. 2/12/2018 EC512 - Prof. Skinner 1 Web Forms ASP.NET 2/12/2018 EC512 - Prof. Skinner 1 Active Server Pages (.asp) Used before ASP.NET and may still be in use. Merges the HTML with scripting on the server. Easier than CGI. Performance is

More information

Arena Development 101 / 102 Courses # A280, A281 IMPORTANT: You must have your development environment set up for this class

Arena Development 101 / 102 Courses # A280, A281 IMPORTANT: You must have your development environment set up for this class Arena Development 101 / 102 Courses # A280, A281 IMPORTANT: You must have your development environment set up for this class Presented by: Jeff Maddox Director of Platform Integrations, Ministry Brands

More information

v SMS 12.2 Tutorial Import from Web Requirements None Time minutes Prerequisites None Objectives

v SMS 12.2 Tutorial Import from Web Requirements None Time minutes Prerequisites None Objectives v. 12.2 SMS 12.2 Tutorial Import from Web Objectives This lesson is designed to give an overview of with the Importing from Web option offered by SMS. This option connects SMS to a web based program that

More information

ASP.net. Microsoft. Getting Started with. protected void Page_Load(object sender, EventArgs e) { productsdatatable = new DataTable();

ASP.net. Microsoft. Getting Started with. protected void Page_Load(object sender, EventArgs e) { productsdatatable = new DataTable(); Getting Started with protected void Page_Load(object sender, EventArgs e) { productsdatatable = new DataTable(); string connectionstring = System.Configuration.ConfigurationManager.ConnectionStrings ["default"].connectionstring;!

More information

Developing for Mobile Devices Lab (Part 1 of 2)

Developing for Mobile Devices Lab (Part 1 of 2) Developing for Mobile Devices Lab (Part 1 of 2) Overview Through these two lab sessions you will learn how to create mobile applications for Windows Mobile phones and PDAs. As developing for Windows Mobile

More information

DevEdit v4.0 Setup Guide (ASP.Net)

DevEdit v4.0 Setup Guide (ASP.Net) DevEdit v4.0 Setup Guide (ASP.Net) http://www.devedit.com Table of Contents Table of Contents...1 Legal Disclaimer...2 Getting Started...3 Web Server Requirements...3 Uploading the Files...3 Setting up

More information

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen https://www.halvorsen.blog 3-tier Architecture Step by step Exercises Hans-Petter Halvorsen Software Architecture 3-Tier: A way to structure your code into logical parts. Different devices or software

More information

Linked Lists. What is a Linked List?

Linked Lists. What is a Linked List? Linked Lists Along with arrays, linked lists form the basis for pretty much every other data stucture out there. This makes learning and understand linked lists very important. They are also usually the

More information

Arduino IDE Friday, 26 October 2018

Arduino IDE Friday, 26 October 2018 Arduino IDE Friday, 26 October 2018 12:38 PM Looking Under The Hood Of The Arduino IDE FIND THE ARDUINO IDE DOWNLOAD First, jump on the internet with your favorite browser, and navigate to www.arduino.cc.

More information

Introduction to Distance Sampling. Automated Survey Design Exercises

Introduction to Distance Sampling. Automated Survey Design Exercises Introduction to Distance Sampling Automated Survey Design Exercises 1. Point transect survey of North-eastern Mexico Reviewing the data Extract and open the project MexicoUnPrj from the archive MexicoUnPrj.zip.

More information

A Summoner's Tale MonoGame Tutorial Series. Chapter 3. Tile Engine and Game Play State

A Summoner's Tale MonoGame Tutorial Series. Chapter 3. Tile Engine and Game Play State A Summoner's Tale MonoGame Tutorial Series Chapter 3 Tile Engine and Game Play State This tutorial series is about creating a Pokemon style game with the MonoGame Framework called A Summoner's Tale. The

More information

Tutorial 5 Completing the Inventory Application Introducing Programming

Tutorial 5 Completing the Inventory Application Introducing Programming 1 Tutorial 5 Completing the Inventory Application Introducing Programming Outline 5.1 Test-Driving the Inventory Application 5.2 Introduction to C# Code 5.3 Inserting an Event Handler 5.4 Performing a

More information

Getting Started with the Bullhorn SOAP API and C#/.NET

Getting Started with the Bullhorn SOAP API and C#/.NET Getting Started with the Bullhorn SOAP API and C#/.NET Introduction This tutorial is for developers who develop custom applications that use the Bullhorn SOAP API and C#. You develop a sample application

More information

Processing Web Form Output. This chapter deals with information returned by the

Processing Web Form Output. This chapter deals with information returned by the 5001_Ch08 07/12/01 2.29 pm Page 269 C H A P T E R 8 Processing Web Form Output This chapter deals with information returned by the application or computer to various Web Form controls. This information

More information

Instructions for writing Web Services using Microsoft.NET:

Instructions for writing Web Services using Microsoft.NET: Instructions for writing Web Services using Microsoft.NET: Pre-requisites: Operating System: Microsoft Windows XP Professional / Microsoft Windows 2000 Professional / Microsoft Windows 2003 Server.NET

More information

Syncfusion Report Platform. Version - v Release Date - March 22, 2017

Syncfusion Report Platform. Version - v Release Date - March 22, 2017 Syncfusion Report Platform Version - v2.1.0.8 Release Date - March 22, 2017 Overview... 5 Key features... 5 Create a support incident... 5 System Requirements... 5 Report Server... 5 Hardware Requirements...

More information

Manual Html Image Src Url Path Not Working

Manual Html Image Src Url Path Not Working Manual Html Image Src Url Path Not Working _img src="file:///absolute/path/to/rails-app/public/image.png" alt="blah" /_. However i obviously want a relative path instead. Where is the relative path going.

More information

Visual Basic/C# Programming (330)

Visual Basic/C# Programming (330) Page 1 of 12 Visual Basic/C# Programming (330) REGIONAL 2017 Production Portion: Program 1: Calendar Analysis (400 points) TOTAL POINTS (400 points) Judge/Graders: Please double check and verify all scores

More information

Sequence and ASP.NET Applications

Sequence and ASP.NET Applications PNMsoft Knowledge Base Sequence Best Practices Sequence and ASP.NET Applications Decmeber 2013 Product Version 7.x 2013 PNMsoft All Rights Reserved This document, including any supporting materials, is

More information

$this->dbtype = "mysql"; // Change this if you are not running a mysql database server. Note, the publishing solution has only been tested on MySQL.

$this->dbtype = mysql; // Change this if you are not running a mysql database server. Note, the publishing solution has only been tested on MySQL. 0.1 Installation Prior to installing the KRIG publishing system you should make sure that your ISP supports MySQL (versions from 4.0 and up) and PHP (version 4.0 or later, preferably with PEAR installed.)

More information

The Stack, Free Store, and Global Namespace

The Stack, Free Store, and Global Namespace Pointers This tutorial is my attempt at clarifying pointers for anyone still confused about them. Pointers are notoriously hard to grasp, so I thought I'd take a shot at explaining them. The more information

More information

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query

More information

Chapter 1 Getting Started

Chapter 1 Getting Started Chapter 1 Getting Started The C# class Just like all object oriented programming languages, C# supports the concept of a class. A class is a little like a data structure in that it aggregates different

More information

CSC 101: PreLab Reading for Lab #4 More HTML (some of this reading on Tables and Images are based on previous writings of Prof William Turkett)

CSC 101: PreLab Reading for Lab #4 More HTML (some of this reading on Tables and Images are based on previous writings of Prof William Turkett) CSC 101: PreLab Reading for Lab #4 More HTML (some of this reading on Tables and Images are based on previous writings of Prof William Turkett) Purpose: The purpose of this pre-lab is to provide you with

More information

Embed a Google File in a Google Site Page

Embed a Google File in a Google Site Page Embed a Google File in a Google Site Page Rather than simply posting a pdf or video for someone to view, you can easily embed the file so that it is displayed as the web page is opened no waiting around

More information

COOKBOOK Creating an Order Form

COOKBOOK Creating an Order Form 2010 COOKBOOK Creating an Order Form Table of Contents Understanding the Project... 2 Table Relationships... 2 Objective... 4 Sample... 4 Implementation... 4 Generate Northwind Sample... 5 Order Form Page...

More information

Hands-On Lab. Lab 02: Visual Studio 2010 SharePoint Tools. Lab version: Last updated: 2/23/2011

Hands-On Lab. Lab 02: Visual Studio 2010 SharePoint Tools. Lab version: Last updated: 2/23/2011 Hands-On Lab Lab 02: Visual Studio 2010 SharePoint Tools Lab version: 1.0.0 Last updated: 2/23/2011 CONTENTS OVERVIEW... 3 EXERCISE 1: CREATING A SHAREPOINT 2010 PROJECT... 4 EXERCISE 2: ADDING A FEATURE

More information

Developing with XForms

Developing with XForms Developing with XForms Product version: 4.60 Document version: 1.0 Document creation date: 29-03-2006 Purpose EPiServer XForms contains logic to store and present forms and data posted from forms. Together

More information

Flexslider v1.x Installation and User Manual

Flexslider v1.x Installation and User Manual 2017/11/08 09:14 1/15 Flexslider v1.x Installation and User Manual Flexslider v1.x Installation and User Manual Latest version: 1.10.0 Compatibility: Magento 1.7.x, 1.8.x, 1.9.x Disclaimer This is the

More information

การสร างเว บเซอร ว สโดยใช Microsoft.NET

การสร างเว บเซอร ว สโดยใช Microsoft.NET การสร างเว บเซอร ว สโดยใช Microsoft.NET อ.ดร. กานดา ร ณนะพงศา ภาคว ชาว ศวกรรมคอมพ วเตอร คณะว ศวกรรมคอมพ วเตอร มหาว ทยาล ยขอนแก น บทน า.NET เป นเคร องม อท เราสามารถน ามาใช ในการสร างและเร ยกเว บเซอร ว สได

More information

ONSITE.NET API. The ScientiaMobile Support Forum is open to all WURFL users, both commercial license holders and evaluation users.

ONSITE.NET API. The ScientiaMobile Support Forum is open to all WURFL users, both commercial license holders and evaluation users. "The first step in a great mobile experience" ONSITE NET API Support The ScientiaMobile Support Forum is open to all WURFL users, both commercial license holders and evaluation users It represents the

More information

Module 2: Using Master Pages

Module 2: Using Master Pages Module 2: Using Master Pages Contents Overview 1 Lesson: Advantages of Using Master Pages 2 Lesson: Writing Master and Content Pages 9 Lesson: Writing Nested Master Pages 21 Lesson: Programming Master

More information

ASP.NET - MANAGING STATE

ASP.NET - MANAGING STATE ASP.NET - MANAGING STATE http://www.tutorialspoint.com/asp.net/asp.net_managing_state.htm Copyright tutorialspoint.com Hyper Text Transfer Protocol HTTP is a stateless protocol. When the client disconnects

More information

Download, Install and Use Winzip

Download, Install and Use Winzip Download, Install and Use Winzip Something that you are frequently asked to do (particularly if you are in one of my classes) is to either 'zip' or 'unzip' a file or folders. Invariably, when I ask people

More information

How define the img src path in MVC Not the answer you're looking for? Browse other on jquery, how to manually define image src into html _img_ tag.

How define the img src path in MVC Not the answer you're looking for? Browse other on jquery, how to manually define image src into html _img_ tag. Manual Html Image Src Path Not Working on jquery, how to manually define image src into html _img_ tag div instead of the img directly is because in my real working file i have overlay another and detection

More information

Pointers in C/C++ 1 Memory Addresses 2

Pointers in C/C++ 1 Memory Addresses 2 Pointers in C/C++ Contents 1 Memory Addresses 2 2 Pointers and Indirection 3 2.1 The & and * Operators.............................................. 4 2.2 A Comment on Types - Muy Importante!...................................

More information

Web Services in.net (2)

Web Services in.net (2) Web Services in.net (2) These slides are meant to be for teaching purposes only and only for the students that are registered in CSE4413 and should not be published as a book or in any form of commercial

More information

Spell Casting Motion Pack 5/5/2017

Spell Casting Motion Pack 5/5/2017 The Spell Casting Motion pack requires the following: Motion Controller v2.49 or higher Mixamo s free Pro Magic Pack (using Y Bot) Importing and running without these assets will generate errors! Overview

More information

Omeka: A tool for building online exhibits, archives, mapping, and digital humanities research

Omeka: A tool for building online exhibits, archives, mapping, and digital humanities research Omeka: A tool for building online exhibits, archives, mapping, and digital humanities research Why Omeka? Omeka is an easy way to display student projects, faculty/student research, and other types of

More information

ArcMap and Google Earth

ArcMap and Google Earth ArcMap and Google Earth Prepared by Andrew Hobby CVEN 658 November 25, 2008 Contents: Brief Overview of Google Earth Goals of Exercise Computer and Data Requirements Procedure: 1. Creating a KML File 2.

More information

Skinning Manual v1.0. Skinning Example

Skinning Manual v1.0. Skinning Example Skinning Manual v1.0 Introduction Centroid Skinning, available in CNC11 v3.15 r24+ for Mill and Lathe, allows developers to create their own front-end or skin for their application. Skinning allows developers

More information

Developing Ajax Applications using EWD and Python. Tutorial: Part 2

Developing Ajax Applications using EWD and Python. Tutorial: Part 2 Developing Ajax Applications using EWD and Python Tutorial: Part 2 Chapter 1: A Logon Form Introduction This second part of our tutorial on developing Ajax applications using EWD and Python will carry

More information