1、编写一个WebServiceweb
开发环境:VS2012数据库
1.编写webservice阶段浏览器
打开VS2012,新建一个空的web应用程序,我这里用的Framework版本是4.5的服务器
新建好web应用程序后,在新建一个WebService服务项。测试
这样咱们就看到了这样的一个界面。加密
将Hello World删除,修改成下面的这个代码。spa
using System;3d
using System.Collections.Generic;orm
using System.Linq;blog
using System.Web;
using System.Web.Services;
namespace FirstWebService
{
/// <summary>
/// FirstWebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要容许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释如下行。
// [System.Web.Script.Services.ScriptService]
public class FirstWebService : System.Web.Services.WebService
{
[WebMethod]
public int Sum(int a, int b)
{
return a + b;
}
[WebMethod]
public int Sub(int a, int b)
{
return a - b;
}
[WebMethod]
public double Mult(double a, double b)
{
return a * b;
}
[WebMethod]
public double Div(double a, double b)
{
return a / b;
}
}
}
此时,咱们已经完成这个WebService的代码部分.接下来咱们要将这个WebService打包发布,注意,在发布以前要编译,不编译会发布不成功的。
2.发布阶段
在项目上右键,选择发布
此时出现以下页面
点击下拉菜单选择新建配置文件
在就是选择目标位置
这里就要选择发布的位置,能够选择文件系统,也能够选择在IIS服务器上发布,若是要在IIS服务器上发布,首先要在项目属性中的web中使用本地的IIS服务器
这里建立虚拟目录就能够了
这里先说本地IIS发布,点击以后会发现里面有个本地IIS点击,找到你在IIS上面建立的webservice工程,点击打开便可
选择文件系统发布,找个发布的位置便可,能够新建一个文件夹,找到位置便可,点击打开
点击下一步
点击图中的下拉框,选择和图中红圈中相似便可,点击发布
这样webservice服务端算是完成了,添加到服务器上就可使用了。
在IIS上发布的能够看到,红圈里面的就是刚刚写的方法,点击一个(Div测试)
输入测试数据, 点击调用
此时咱们已经完成了这个WebService的建立和部署.接下来,咱们要在本地使用它
2、客户端使用
打开VS2012,建立一个空的web应用程序
在工程里面添加一个空的web窗体
在项目 用,显示界面以下:
点击左下角的高级,出现界面以下
点击添加Web引用,出现界面以下
在URL中输入咱们发布的WebService的URL地址,系统会自动搜索到服务.而且为Web引用设置一个引用名.此引用名将是咱们在项目中引用这个服务的命名空间
点击添加引用,引用完成.
接下来,咱们在WebForm1的cs文件中写以下代码
接下来,在浏览器中运行该项目.能够看到以下结果
这样就能够输出结果了,算是完成了一次WebService使用过程了。
在这里要注意,当WebService链接数据库时,咱们要适当的给WebService进行加密.
加密的方式不少,你能够经过在IIS服务器上禁止匿名访问来实现,也能够给WebService的验证增长验证内容,最
简单的就是加上用户名和密码.
还要注意,不要用有含义的方法名称,好比Login或者PayOrder等,回传数据不要使用bool值,尽可能使用字符串来替
代,最好在字符串中加上干扰码等.
在发布过程当中可能会出现测试窗口只能在本地实现,这样就须要在web.config中配置
在System.web中添加图中红色圈中的便可