VS2010 使用WebService
vs2010上面找不到直接创建webservice模板方式了。可以通过一下方式创建。
1.如果直接选择 .NET 4.0,可以选择 ASP.NET Empty Web Site/Application 模板,建立空的 Web 网站或项目,在添加新项窗口中,你依然会发现 Web Service 这个项模板。
2.可以先选择 .NET 2.0/3.0/3.5,就可以选择 ASP.NET Web Services 模板建立了,之后如果需要 .NET 4.0 的新特性,可以在项目属性窗口或网站属性页窗口的 Build 选项卡中选择 .NET 4.0。
PS:这个是我百度别人。
首先创建空白解决方案。
然后在解决方案右击-添加-新建项目-选择web应用程序就行
在应用程序上右击-添加-web服务
添加完成以后可以看到
里面已经建立了框架
可以直接运行查看
点击超链接到下一页
点击调用到就可以看到用XML格式返回的Web Service结果下图。说明环境搭建成功测试没有问题。
接下来创建一个简单带有功能的Web Service
注销原来的代码,写自己接口方法
[WebMethod(Description = "加法")]
public double add(double i, double j)
{
return i + j;
}
[WebMethod(Description = "减法")]
public double sub(double i, double j)
{
return i - j;
}
[WebMethod(Description = "乘法")]
public double mul(double i, double j)
{
return i * j;
}
[WebMethod(Description = "除法")]
public double div(double i, double j)
{
if (j != 0)
return i / j;
else
return 0;
}
运行后可以看到我们自己的方法。
现在我们来调用它
在新建的项目右击添加服务引用,在url 框中输入刚才访问接口的url地址
(注意不是添加服务引用,方法是:在资源管理器中点击右键,选择【添加服务引用】,点击 【高级】,【添加WEB引用】,调出对话框)
点击添加引用
如下图,解决方案中会出现引进来的WebService文件
先在网页上添加几个控件用来测试
<form id="form1" runat="server">
<div>
<asp:TextBox ID="Num1" runat="server"></asp:TextBox>
<select id="selectOper" runat = "server">
<option>+</option>
<option>-</option>
<option>*</option>
<option>/</option>
</select>
<asp:TextBox ID="Num2" runat="server"></asp:TextBox>
<span id = E runat = "server"></span>
<asp:TextBox ID="Result" runat="server"></asp:TextBox>
</div>
</form>
后台代码
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//在页面加载的时候动态创建一个按钮,在它的事件里调用Webservice
Button btn = new Button();
btn.Width = 20;
btn.Text = " = ";
btn.Click += new EventHandler(btn_Click);
E.Controls.Add(btn);
}
/// <summary>
/// 定义动态创建Button的Click事件,在这个事件中调用Webservice
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void btn_Click(object sender, EventArgs e)
{
if (Num1.Text != "" && Num2.Text != "")
{
//实例化引用的webservice对象
localhost.WebService WebserviceInstance = new localhost.WebService();
int Oper = selectOper.SelectedIndex;
switch (Oper)
{
//通过实例化的webservice对象来调用Webservice暴露的方法
case 0:
Result.Text = WebserviceInstance.add(double.Parse(Num1.Text), double.Parse(Num2.Text)).ToString();
break;
case 1:
Result.Text = WebserviceInstance.sub(double.Parse(Num1.Text), double.Parse(Num2.Text)).ToString();
break;
case 2:
Result.Text = WebserviceInstance.mul(double.Parse(Num1.Text), double.Parse(Num2.Text)).ToString();
break;
case 3:
Result.Text = WebserviceInstance.div(double.Parse(Num1.Text), double.Parse(Num2.Text)).ToString();
break;
}
}
}
}
}
然后开始测试了
测试成功
VS2010 使用WebService的更多相关文章
- VS2010编写WebService与在IIS的发布<之简单讲解>
工具VS2010,window环境win7 一:Webservice的创建与方法查看调用 1.新建空web应用程序项目 2.新建web服务 3.自动生成 4.直接跑起来,可以看到有2个方法 5.点击H ...
- 使用VS2010创建WebService 发布、测试
http://blog.sina.com.cn/s/blog_45eaa01a0102vopl.html 1 打开VS2010,菜单 文件->新建->项目 2 选择[ASP.net ...
- Vs2010创建WebService
在Visual Studio 2010中已经找不到直接创建WebService的模板方式了,但下面的方法可心实现: 在 Visual Studio 2010 的新建 Web 应用程序或者 Web 网站 ...
- VS2010创建WebService的步骤
1.新建网站 ---ASP.NET 空网站 2.添加新项---Web服务..
- 使用vs2010创建、发布、部署、调用 WebService
原文地址:使用vs2010创建.发布.部署.调用 WebService作者:吴超 一 使用vs2010创建 WebService 1 打开VS2010,菜单 文件->新建->项目2 ...
- FTP的搭建与虚拟目录作用<之简单讲解>
操作系统:win7 VS2010编写WebService与在IIS的发布<之简单讲解>中我已经说了IIS安装与使用,不明白的可以跳过去看. 1.添加FTP站点 2. 3. 4. 5. zq ...
- HTTP 错误 500.21 - Internal Server ErrorHTTP
应用程序“DEFAULT WEB SITE/WINDRP_TB/TBFXWS”中的服务器错误Internet Information Services 7.5错误摘要HTTP 错误 500.21 - ...
- ASP.Net .Net4.0 HTTP 错误 404.17 - Not Found
源:ASP.Net .Net4.0 HTTP 错误 404.17 - Not Found 用了网上很多方法,最后是用这个网友的方法解决的,在此做个记录. VS2010编写WebService与在IIS ...
- 搭建调用 WebService 的 ASP.NET 网站 (VS2010, C#)
[系统环境]Windows 7 / 2008r2 [软件环境]Visual Studio 2010 [开发语言]C# [感谢]本文是在 <C#开发和调用Web Service> 一文的基础 ...
随机推荐
- rpm命令
RPM 安装.卸载.升级.查询和验证. RPM 安装 命令: rpm -i 文件名 如: rpm -i example.rpm 安装 example.rpm 包: rpm -iv example.rp ...
- Windows 10下通过蓝牙连接iPhone个人热点进行共享上网
出处:qiuyi21.cnblogs.com 1.iPhone开启个人热点 在iPhone中打开蓝牙,然后进入“个人热点”并打开开关,如果提示热点发射方式请选择蓝牙那项,然后停留在“个人热点”界面并且 ...
- 二模13day1解题报告
二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...
- QTP安装连接Oracle数据库
之前学过一段时间QTP,之后便没用这个笨重的东东,为了以防忘记,再次记录下曾经连接数据库经历了几天才搞好的事情(虽然这个工具可能已经过时,但是国企一般都会使用的) 前提条件: 你已经安装好了QTP / ...
- iptables日志探秘
iptables日志探秘 防火墙的主要功能除了其本身能进行有效控制网络访问之外,还有一个很重要的功能就是能清晰地记录网络上的访问,并自动生成日志进行保存.虽然日志格式会因防火墙厂商的不同而形态各异,但 ...
- C#读写者线程(用AutoResetEvent实现同步)(转载)
C#读写者线程(用AutoResetEvent实现同步) 1. AutoResetEvent简介 通知正在等待的线程已发生事件.无法继承此类. 常用方法简介: AutoResetEvent(bool ...
- 分享45个android实例源码,很好很强大
分享45个android实例源码,很好很强大 http://www.apkbus.com/android-20978-1-1.html 分享45个android实例源码,很好很强大http://www ...
- html特殊字符 编码css3 content:"我是特殊符号"
项目中用到的一些特殊字符和图标 html代码 <div class="cross"></div> css代码 .cross{ width: 20px; he ...
- sox linux 下运用
1.下载SOX sox-14.4.1.tar.gz 2.安装sox文件 1)解压 tar -zxvf sox-14.4.1.tar.gz 2)进入sox14.4.1目录中执行./configure 3 ...
- 如何判断js中的数据类型
如何判断js中的数据类型:typeof.instanceof. constructor. prototype方法比较 如何判断js中的类型呢,先举几个例子: var a = "iamstri ...