Services属性
来源:互联网 发布:多益网络招聘待遇 编辑:程序博客网 时间:2024/06/06 01:45
Services用来管理对WebService的调用,通过<asp:ServiceReference>标签可以在Services中注册一个WebService,在运行时ScriptManager将为每一个ServiceReference对象生成一个客户端代理,<asp:ServiceReference>标签一个很重要的属性是Path,用来指定WebService的路径,如下所示:
<asp:ScriptManager ID="SM1" runat="server">
<Services>
<asp:ServiceReference Path="Service.asmx"/>
</Services>
</asp:ScriptManager>
<Services>
<asp:ServiceReference Path="Service.asmx"/>
</Services>
</asp:ScriptManager>
看一个简单的调用WebService的例子:
WebService如下,注意在WebServiceSample上加ScriptService特性:
[ScriptService]
public class WebServiceSample : System.Web.Services.WebService {
public WebServiceSample()
{
//Uncomment the following line if using designed components
//InitializeComponent();
}
[WebMethod]
public string EchoString(String s)
{
return "Hello " + s;
}
}
public class WebServiceSample : System.Web.Services.WebService {
public WebServiceSample()
{
//Uncomment the following line if using designed components
//InitializeComponent();
}
[WebMethod]
public string EchoString(String s)
{
return "Hello " + s;
}
}
ASPX页面:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<script type="text/javascript" language="JavaScript">
function OnbuttonGo_click()
{
requestSimpleService = WebServiceSample.EchoString(
document.getElementById('inputName').value, //params
OnRequestComplete //Complete event
);
return false;
}
function OnRequestComplete(result)
{
alert(result);
}
</script>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="WebServiceSample.asmx"/>
</Services>
</asp:ScriptManager>
<div>
<input type="text" id="inputName" size=20/>
<input id="button" type="button" value="调 用" onclick="return OnbuttonGo_click()" /></div>
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<script type="text/javascript" language="JavaScript">
function OnbuttonGo_click()
{
requestSimpleService = WebServiceSample.EchoString(
document.getElementById('inputName').value, //params
OnRequestComplete //Complete event
);
return false;
}
function OnRequestComplete(result)
{
alert(result);
}
</script>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="WebServiceSample.asmx"/>
</Services>
</asp:ScriptManager>
<div>
<input type="text" id="inputName" size=20/>
<input id="button" type="button" value="调 用" onclick="return OnbuttonGo_click()" /></div>
</form>
</body>
</html>
运行后效果如下:
当然了也可以在运行时动态的在Services中加入ServiceReference,下面看一个运行时动态加入ServiceReference的例子:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
ServiceReference sr = new ServiceReference();
sr.Path = "WebServiceSample.asmx";
ScriptManager1.Services.Add(sr);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<script type="text/javascript" language="JavaScript">
function OnbuttonGo_click()
{
requestSimpleService = WebServiceSample.EchoString(
document.getElementById('inputName').value, //params
OnRequestComplete //Complete event
);
return false;
}
function OnRequestComplete(result)
{
alert(result);
}
</script>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<input type="text" id="inputName" size=20/>
<input id="button" type="button" value="调 用" onclick="return OnbuttonGo_click()" /></div>
</form>
</body>
</html>
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
ServiceReference sr = new ServiceReference();
sr.Path = "WebServiceSample.asmx";
ScriptManager1.Services.Add(sr);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<script type="text/javascript" language="JavaScript">
function OnbuttonGo_click()
{
requestSimpleService = WebServiceSample.EchoString(
document.getElementById('inputName').value, //params
OnRequestComplete //Complete event
);
return false;
}
function OnRequestComplete(result)
{
alert(result);
}
</script>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<input type="text" id="inputName" size=20/>
<input id="button" type="button" value="调 用" onclick="return OnbuttonGo_click()" /></div>
</form>
</body>
</html>
可以看到运行后和在ScriptManager中直接加入的效果是一样的。
- Services属性
- Services
- services
- Services
- services
- Services
- Services
- Services
- Services
- Services
- Services
- Services
- Services
- Services
- VMware vSphere Web Services SDK编程指南(七)- 7 属性收集器(Property Collector)
- Services boot services
- Enhance services 优化services
- Win7中报错“连接的用户不是Analysis Services服务器管理员,只有管理员才能对服务器属性进行更改”
- SmartDraw2008破解过程总结
- 刚刚注册了ID,留文纪念
- 显示 cpu 使用率
- 应用系统性能测试六大步
- 错误处理
- Services属性
- Web的桌面提醒(Popup)
- make_pair()
- 类为何要继承,要Override的比喻
- C++03标准中的几处缺陷
- Hiberante 错误解决 org.hibernate.tuple.AbstractEntityTuplizer.createProxy
- DelayLoad
- Discuz! 6.1 - 不修改模板在贴子上增加收藏按钮
- Let eCTDXPress work successfully