📄 servicesandobjs.aspx
字号:
<%@ Register TagPrefix="Acme" Namespace="Acme" Assembly="QSTools" %>
<%@ Register TagPrefix="Acme" TagName="SourceRef" Src="/quickstart/aspplus/util/SrcRef.ascx"%>
<!-- #include virtual="/quickstart/aspplus/include/header.inc" -->
<h4>使用对象和内部对象</h4>
本示例阐释如何访问 ASP.NET 内部对象,如 <b>Session</b> 和 <b>Application</b> 对象。本例还说明如何在每个 [WebMethod] 的基础上关闭 <b>Session</b>。
<p>
示例 .asmx 文件中的第一个方法是 <B>UpdateHitCounter</B>,它访问 <b>Session</b> 并在“HitCounter”值上加 1,然后以字符串形式返回该值。第二个方法是 <B>UpdateAppCounter</B>,它完成与第一个方法相同的工作,不过访问的是 <b>Application</b>。注意下列内容:
<p>
<Acme:TabControl runat="server">
<Tab Name="C#">
[WebMethod(EnableSession=true)]
</Tab>
<Tab Name="VB">
<WebMethod(EnableSession:=true)>
</Tab>
<Tab Name="JScript">
<WebMethodAttribute(true)>
</Tab>
</Acme:TabControl><div class="code"><pre>
</pre></div>
<p>
默认情况下禁用 XML Web 服务的会话状态,因此必须使用特殊的特性属性来启用 <b>Sessions</b>。然而,此对象并不需要 <b>Sessions</b>,因为它仅使用 <b>Application</b> 对象。
<p>
<table>
<tr>
<td>
<Acme:LangSwitch runat="server">
<CsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/CS/SessionService1.asmx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1.src"
Icon="/quickstart/aspplus/images/sessionservice_asmx.gif"
Caption="C# SessionService.asmx"
runat="server" />
</CsTemplate>
<VbTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/VB/SessionService1.asmx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1.src"
Icon="/quickstart/aspplus/images/sessionservice_asmx.gif"
Caption="VB SessionService.asmx"
runat="server" />
</VbTemplate>
<JsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/JS/SessionService1.asmx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1.src"
Icon="/quickstart/aspplus/images/sessionservice_asmx.gif"
Caption="JScript SessionService.asmx"
runat="server" />
</JsTemplate>
</Acme:LangSwitch>
</td>
<td>
<Acme:LangSwitch runat="server">
<CsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/CS/SessionService1.asmx?WSDL"
Icon="/quickstart/aspplus/images/service_sdl.gif"
Caption="C# SessionService.asmx?wsdl"
runat="server" />
</CsTemplate>
<VbTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/VB/SessionService1.asmx?WSDL"
Icon="/quickstart/aspplus/images/service_sdl.gif"
Caption="VB SessionService.asmx?wsdl"
runat="server" />
</VbTemplate>
<JsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/JS/SessionService1.asmx?WSDL"
Icon="/quickstart/aspplus/images/service_sdl.gif"
Caption="JScript SessionService.asmx?wsdl"
runat="server" />
</JsTemplate>
</Acme:LangSwitch>
</td>
</tr>
</table>
<p>
当访问客户端代理时,它包含一个 Cookie 集合。此集合用于接受和返回 ASP.NET 用来跟踪会话的 APSESSIONID Cookie。正是它使此客户端得以接收 <b>Sessions</b> 点击方法的不同答案。
<p>
<Acme:LangSwitch runat="server">
<CsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/CS/SessionService1Client.aspx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1Client.src"
Icon="/quickstart/aspplus/images/sessionservice_client.gif"
Caption="C# SessionServiceClient.aspx"
runat="server" />
</CsTemplate>
<VbTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/VB/SessionService1Client.aspx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1Client.src"
Icon="/quickstart/aspplus/images/sessionservice_client.gif"
Caption="VB SessionServiceClient.aspx"
runat="server" />
</VbTemplate>
<JsTemplate>
<Acme:SourceRef
RunSample="/quickstart/aspplus/samples/services/Intrinsics/JS/SessionService1Client.aspx"
ViewSource="/quickstart/aspplus/samples/services/Intrinsics/SessionService1Client.src"
Icon="/quickstart/aspplus/images/sessionservice_client.gif"
Caption="JScript SessionServiceClient.aspx"
runat="server" />
</JsTemplate>
</Acme:LangSwitch>
<!-- #include virtual="/quickstart/aspplus/include/footer.inc" -->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -