Add New Project


Add Web Form
-
Add New Item > Web Form


Connected Services > Add Service Reference


Use Discover > Services in Solution to pickup our ProtoService webservice

-
Select TemperatureConverter.asmx

-
Add Namespace 'TemperatureConverterService'
-
Connected Services will now show the newly added Service

Web.config
-
contains endpoint & binding information for the newly added service reference
<client>
<endpoint address="http://localhost:49294/TemperatureConverter.asmx"
binding="basicHttpBinding" bindingConfiguration="TemperatureConverterSoap"
contract="TemperatureConverterService.TemperatureConverterSoap"
name="TemperatureConverterSoap" />
</client>
WebForm – WebServiceAggregator.aspx
-
Open the aspx
-
Go to design
Default Form
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebServiceAggregator.aspx.cs" Inherits="ProtoClient.WebServiceAggregator" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
-
Use the Sidebar Toolbox to select controls for the WebForm
-
Add Labels & TextBox for Temperature & Result
-
Add a Button for Submitting
-
Update control ID & Text
-
Double click the button to bring up the event handler

-
Go To Properties

Default aspx.cs code for the form
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace ProtoClient
{
public partial class WebServiceAggregator : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
}
}
}
-
Create a new Client using the Web.config 'namespace' / contract
contract="TemperatureConverterService.TemperatureConverterSoap"
//reference to the webservice
TemperatureConverterService.TemperatureConverterSoapClient client = new TemperatureConverterService.TemperatureConverterSoapClient();
Full WebForm Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace ProtoClient
{
public partial class WebServiceAggregator : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
//reference to the webservice
TemperatureConverterService.TemperatureConverterSoapClient client = new TemperatureConverterService.TemperatureConverterSoapClient();
// cast the Text input to double
double dblTemp = Double.Parse(txtTemperatureInput.Text);
// run the ws call
double dblResult = client.ConvertFahernheitToCelsius(dblTemp);
//update the UI with the result
lblResult.Text = "" + dblResult;
}
}
}
Start the WebForm
-
First select right-click WebServiceAggregator.aspx webform > View in Browser

Running WebForm with Controls

Start the WebService
-
Then Start the Solution's WebService provider ProtoService with IIS Express Run
![]()
Running WebService

Send Soap Request using WebForm
-
Then use the webform to send the soap request to the webservice

- Log in to post comments

