Web Service学习笔记(2)
来源:Alexis的51博客 责任编辑:栏目编辑 发表时间:2013-07-02 02:04 点击:次
创建一个简单的Web Service
上一章节中提到Web Service与网页的相似之处,这里在总结下:
1。由和通用语言运行时完全实现,包含面向对象架构,所有基类,还有一些特性,如缓存、状态和数据访问
2。几乎一致的文件和代码结构
3。所有源代码文件都是普通文本
4。vs完全支持,可以使用vs十分便捷的编辑、调试
5。使用一个基于普通文本的配置文件和vs的网站管理工具做全局或者应用程序级配置。
Web Service没有界面,它只有方法,有一些事支持从客户端远程调用的。Web Service文件的后缀名为asmx。
在Web Service应用程序第一次运行时,如果Web Service是人工编译的,并且被放在虚拟跟目录的bin目录下,那么代码隐藏对于内联编码有性能优势,因为asmx文件在Web Service运行时都会被编译成一个类。而ASP.NET 2.0在默认情况下没有这一优势,因为ASP.NET 2.0 把源代码放在App_Code目录下,并且在第一个使用时编译。
下面是一个实例(股票跟踪,不使用数据库,只是为了演示,故使用二维数组)
这个Web Service提供两个方法:
GetName:参数是一个StcokSymbol对象,返回一个字符串,内容是股票名称
GetPrice:参数是一个StcokSymbol对象,返回一个数字,表示当前股票的价格
我使用的是vs2010,
首先新建一个项目(WebSite也可以),注意选择.NET Framework 3.5,默认4是没有Web Service选项的。选择ASP.NET Web Service Application,命名为StockWebService,如图
我们可以看到,vs自动为我们生成了一些代码:
- /// <summary>
- /// Summary description for Service1
- /// </summary>
- [WebService(Namespace = "http://tempuri.org/")]
- [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
- [System.ComponentModel.ToolboxItem(false)]
- // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
- // [System.Web.Script.Services.ScriptService]
- public class Service1 : System.Web.Services.WebService
- {
- [WebMethod]
- public string HelloWorld()
- {
- return "Hello World";
- }
- }
在Service类中,有一个名为HelloWorld的模板方法,它将返回一个字符串。这个方法使用WebMethod特性做修饰,表示该方法对Web Service使用程序可用。WebMethod特性会在后面解释。
按F5运行程序,可以看到如图所示
添加以下方法
- [WebMethod]
- public double GetPrice(string stockSymbol)
- {
- for (int i&n
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>