-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
WebService.xml
368 lines (327 loc) · 25 KB
/
WebService.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
<Type Name="WebService" FullName="System.Web.Services.WebService">
<TypeSignature Language="C#" Value="public class WebService : System.ComponentModel.MarshalByValueComponent" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit WebService extends System.ComponentModel.MarshalByValueComponent" />
<TypeSignature Language="DocId" Value="T:System.Web.Services.WebService" />
<TypeSignature Language="VB.NET" Value="Public Class WebService
Inherits MarshalByValueComponent" />
<TypeSignature Language="F#" Value="type WebService = class
 inherit MarshalByValueComponent" />
<TypeSignature Language="C++ CLI" Value="public ref class WebService : System::ComponentModel::MarshalByValueComponent" />
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ComponentModel.MarshalByValueComponent</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Defines the optional base class for XML Web services, which provides direct access to common ASP.NET objects, such as application and session state.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If you don't need access to the common ASP.NET objects, you can still create an XML Web service without deriving from <xref:System.Web.Services.WebService>. Additional ASP.NET objects can be accessed through <xref:System.Web.Services.WebService.Context%2A>.
XML Web service methods that have the <xref:System.Web.Services.Protocols.SoapRpcMethodAttribute.OneWay%2A> property of either <xref:System.Web.Services.Protocols.SoapRpcMethodAttribute> or <xref:System.Web.Services.Protocols.SoapDocumentMethodAttribute> set to `true`, do not have access to their <xref:System.Web.HttpContext>. As such, accessing any of the properties of the <xref:System.Web.Services.WebService> class, from within that XML Web service method, return `null`.
If you are using the .NET Framework version 1.0 XML Web service methods that have either the <xref:System.Web.Services.Protocols.SoapRpcMethodAttribute> or <xref:System.Web.Services.Protocols.SoapDocumentMethodAttribute> attribute applied to them with the <xref:System.Web.Services.Protocols.SoapDocumentMethodAttribute.OneWay%2A> property of set to `true`, do not have access to their <xref:System.Web.HttpContext> using the static <xref:System.Web.HttpContext.Current%2A> property. To access the <xref:System.Web.HttpContext>, derive the class implementing the XML Web service method from <xref:System.Web.Services.WebService> and access the <xref:System.Web.Services.WebService.Context%2A> property.
## Examples
The example below creates an XML Web service, deriving from <xref:System.Web.Services.WebService>, in order to use the <xref:System.Web.Services.WebService.Context%2A> property to obtain the time of the request on the server.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebService/Overview/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebService Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public WebService ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Web.Services.WebService.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:
 WebService();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.Web.Services.WebService" /> class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Application">
<MemberSignature Language="C#" Value="public System.Web.HttpApplicationState Application { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Web.HttpApplicationState Application" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.Application" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Application As HttpApplicationState" />
<MemberSignature Language="F#" Value="member this.Application : System.Web.HttpApplicationState" Usage="System.Web.Services.WebService.Application" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::HttpApplicationState ^ Application { System::Web::HttpApplicationState ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Description("The ASP.NET application object for the current request.")]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Description("The ASP.NET application object for the current request.")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.HttpApplicationState</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the application object for the current HTTP request.</summary>
<value>An <see cref="T:System.Web.HttpApplicationState" /> object.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
XML Web services can use both application state and session state. Application state is maintained across all sessions accessing an XML Web service regardless of whether session state is turned off for a method(by using the <xref:System.Web.Services.WebMethodAttribute.EnableSession%2A> property of the <xref:System.Web.Services.WebMethodAttribute>).
## Examples
The example below demonstrates a hit counter, incrementing the count every time a browser calls the XML Web service method.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebService/Application/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebService.Application Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
<altmember cref="T:System.Web.HttpApplicationState" />
</Docs>
</Member>
<Member MemberName="Context">
<MemberSignature Language="C#" Value="public System.Web.HttpContext Context { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Web.HttpContext Context" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.Context" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Context As HttpContext" />
<MemberSignature Language="F#" Value="member this.Context : System.Web.HttpContext" Usage="System.Web.Services.WebService.Context" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::HttpContext ^ Context { System::Web::HttpContext ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.HttpContext</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the ASP.NET <see cref="T:System.Web.HttpContext" /> for the current request, which encapsulates all HTTP-specific context used by the HTTP server to process Web requests.</summary>
<value>The ASP.NET <see cref="T:System.Web.HttpContext" /> for the current request.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
XML Web service methods that have either the <xref:System.Web.Services.Protocols.SoapRpcMethodAttribute> or <xref:System.Web.Services.Protocols.SoapDocumentMethodAttribute> attribute applied to them with the <xref:System.Web.Services.Protocols.SoapDocumentMethodAttribute.OneWay%2A> property of set to `true`, do not have access to their <xref:System.Web.HttpContext> using the static <xref:System.Web.HttpContext.Current%2A> property. To access the <xref:System.Web.HttpContext>, derive the class implementing the XML Web service method from <xref:System.Web.Services.WebService> and access the <xref:System.Web.Services.WebService.Context%2A> property.
## Examples
The Example below uses the <xref:System.Web.Services.WebService.Context%2A> property to obtain the time of the request on the server.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebService/Overview/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebService Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
<exception cref="T:System.Exception">
<paramref name="Context" /> is <see langword="null" />.</exception>
<altmember cref="T:System.Web.HttpContext" />
</Docs>
</Member>
<Member MemberName="Server">
<MemberSignature Language="C#" Value="public System.Web.HttpServerUtility Server { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Web.HttpServerUtility Server" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.Server" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Server As HttpServerUtility" />
<MemberSignature Language="F#" Value="member this.Server : System.Web.HttpServerUtility" Usage="System.Web.Services.WebService.Server" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::HttpServerUtility ^ Server { System::Web::HttpServerUtility ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.HttpServerUtility</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the <see cref="T:System.Web.HttpServerUtility" /> for the current request.</summary>
<value>An <see cref="T:System.Web.HttpServerUtility" /> object.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.HttpServerUtility> class provides several methods that can be used in the processing of Web requests, including <xref:System.Web.HttpServerUtility.CreateObject%2A> (for instantiating COM objects).
## Examples
The example below returns the computer name of the Web server using the <xref:System.Web.Services.WebService.Server%2A> property.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebService/Server/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebService.Server Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
<altmember cref="T:System.Web.HttpServerUtility" />
<altmember cref="M:System.Web.HttpServerUtility.CreateObject(System.String)" />
</Docs>
</Member>
<Member MemberName="Session">
<MemberSignature Language="C#" Value="public System.Web.SessionState.HttpSessionState Session { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Web.SessionState.HttpSessionState Session" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.Session" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Session As HttpSessionState" />
<MemberSignature Language="F#" Value="member this.Session : System.Web.SessionState.HttpSessionState" Usage="System.Web.Services.WebService.Session" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::SessionState::HttpSessionState ^ Session { System::Web::SessionState::HttpSessionState ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.SessionState.HttpSessionState</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the <see cref="T:System.Web.SessionState.HttpSessionState" /> instance for the current request.</summary>
<value>An <see cref="T:System.Web.SessionState.HttpSessionState" /> representing the ASP.NET session state object for the current session.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The example below uses session state to determine how many times a particular session accesses the XML Web service method `SessionHitCounter`. In this example, the <xref:System.Web.Services.WebMethodAttribute.EnableSession%2A> property of the <xref:System.Web.Services.WebMethodAttribute> is set to `true` in order to gain access to session state.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebMethodAttribute/EnableSession/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebMethodAttribute.EnableSession Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
<altmember cref="T:System.Web.SessionState.HttpSessionState" />
</Docs>
</Member>
<Member MemberName="SoapVersion">
<MemberSignature Language="C#" Value="public System.Web.Services.Protocols.SoapProtocolVersion SoapVersion { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Web.Services.Protocols.SoapProtocolVersion SoapVersion" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.SoapVersion" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property SoapVersion As SoapProtocolVersion" />
<MemberSignature Language="F#" Value="member this.SoapVersion : System.Web.Services.Protocols.SoapProtocolVersion" Usage="System.Web.Services.WebService.SoapVersion" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::Services::Protocols::SoapProtocolVersion SoapVersion { System::Web::Services::Protocols::SoapProtocolVersion get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1">
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1">
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1">
<AttributeName Language="C#">[System.Runtime.InteropServices.ComVisible(false)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.InteropServices.ComVisible(false)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.Services.Protocols.SoapProtocolVersion</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the version of the SOAP protocol used to make the SOAP request to the XML Web service.</summary>
<value>One of the <see cref="T:System.Web.Services.Protocols.SoapProtocolVersion" /> values. The default is <see cref="F:System.Web.Services.Protocols.SoapProtocolVersion.Default" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If the SOAP protocol was not used to communicate with the XML Web service, such as HTTP-GET or HTTP-POST, the value of the <xref:System.Web.Services.WebService.SoapVersion%2A> property is <xref:System.Web.Services.Protocols.SoapProtocolVersion.Default>.
For XML Web services that do not derive from the <xref:System.Web.Services.WebService> class, the version of the SOAP protocol used to make the SOAP request to the XML Web service can be also be accessed using the "WebServiceSoapVersion" entry of the <xref:System.Web.HttpContext.Items%2A?displayProperty=nameWithType> property. That entry is of type <xref:System.Web.Services.Protocols.SoapProtocolVersion>.
]]></format>
</remarks>
<altmember cref="T:System.Web.Services.Protocols.SoapProtocolVersion" />
<altmember cref="P:System.Web.HttpContext.Items" />
</Docs>
</Member>
<Member MemberName="User">
<MemberSignature Language="C#" Value="public System.Security.Principal.IPrincipal User { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Security.Principal.IPrincipal User" />
<MemberSignature Language="DocId" Value="P:System.Web.Services.WebService.User" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property User As IPrincipal" />
<MemberSignature Language="F#" Value="member this.User : System.Security.Principal.IPrincipal" Usage="System.Web.Services.WebService.User" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Security::Principal::IPrincipal ^ User { System::Security::Principal::IPrincipal ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web.Services</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.Browsable(false)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.Browsable(false)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Security.Principal.IPrincipal</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the ASP.NET server <see cref="P:System.Web.HttpContext.User" /> object. Can be used to authenticate whether a user is authorized to execute the request.</summary>
<value>A <see cref="T:System.Security.Principal.IPrincipal" /> representing the ASP.NET server <see cref="P:System.Web.HttpContext.User" /> object.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Both Internet Information Services (IIS) and the .NET Framework need to be configured for authentication in order for the <xref:System.Web.Services.WebService.User%2A> property to be meaningful. Authentication is the process of accepting credentials from a user and validating those credentials against some authority. If the credentials are valid, you have an authenticated identity. Authentication in the .NET Framework is configured by placing entries in the web.config file.
The following example demonstrates the entries you place in the web.config file to enable Windows authentication.
```xml
<security>
<authentication mode="Windows"> <!-- Mode Options are Windows, Cookie, Passport and None or Empty String -->
</authentication>
</security>
```
For more information on setting up security for an XML Web service see [Securing XML Web Services Created Using ASP.NET](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w67h0dw7(v=vs.100)).
## Examples
The example below looks up the authenticated user name and returns that name.
:::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebService/User/sourcecs.asmx":::
:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebService.User Example/VB/sourcevb.asmx":::
]]></format>
</remarks>
<altmember cref="T:System.Security.Principal.IPrincipal" />
<related type="Article" href="https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w67h0dw7(v=vs.100)">Securing XML Web Services Created Using ASP.NET</related>
</Docs>
</Member>
</Members>
</Type>