客户端应用程序来测试WCF服务 我们将利用ANP.Net Web 应用程序 中的WebFroms模板 来实现这一界面。 我们可以在同一解决方案中加一项目:右键单击当前资源管理器中的解决方案,选择“添加”,然后选“新建项目”。 如下图所示,在添加新项目对话框中,选择ANP.Net Web应用程序。选择我们将使用的视窗格式应用(Web Forms)模板。 其中,在生成好的解决方案资源管理器中的Default.aspx文件将用来设计用户界面;Default.aspx.cs文件将包含执行用户界面功能的C#代码。 项目建好后,我们需要把温度转换服务添加进来。右键单击WebApplication2项目,选择"添加服务引用"。 (注意:添加WCF服务使用"添加服务引用",而添加ASP .Net服务则使用"添加Web引用")。 下图中显示了添加服务引用的对话框窗口和服务的相关操作,我们把服务的代理命名为ServiceReference2。 编写客户端代码(1) 3.1 打开WebApplication2项目中的Default.aspx文件,在该文件中添加与Web Form设计有关的代码。
< body>
< form id= "form1" runat= "server" >
< div> < / div>
< asp: Label ID= "lable2" runat= "server" Text= "摄氏温度:" > < / asp: Label>
< asp: TextBox ID= "textBox1" runat= "server" > < / asp: TextBox>
< asp: Button ID= "button1" runat= "server" OnClick= "button1_Click" Text= "摄氏转华氏" / >
< asp: Label ID= "label3" runat= "server" Text= "华氏温度:" > < / asp: Label>
< p>
< asp: Label ID= "label4" runat= "server" Text= "华氏温度:" > < / asp: Label>
< asp: TextBox ID= "textBox2" runat= "server" > < / asp: TextBox>
< asp: Button ID= "button2" runat= "server" OnClick= "button2_Click" Text= "华氏转摄氏" / >
< asp: Label ID= "label5" runat= "server" Text= "摄氏温度:" > < / asp: Label>
< / p>
< / form>
< / body>
编写客户端代码(2) 3.2 打开WebApplication2项目中的Default.aspx.cs文件,在该文件中添加与温度转换服务相关的代码。
protected void button1_Click ( object sender, EventArgs e)
{
double c = Convert. ToDouble ( textBox1. Text) ;
ServiceReference2. Service1Client client = new ServiceReference2. Service1Client ( ) ;
label3. Text = "华氏温度为:" + client. C2f ( c) . ToString ( ) ;
}
private void button2_Click ( object sender, EventArgs e)
{
double f = Convert. ToDouble ( textBox2. Text) ;
ServiceReference2. Service1Client client = new ServiceReference2. Service1Client ( ) ;
label5. Text = "摄氏温度为:" + client. F2c ( f) . ToString ( ) ;
}
WCF测试客户端 :在解决方案资源管理器中,右击Default.aspx文件,把当前项目设为起始页 ,然后运行。