WebService.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Web / System / Web / Services / WebService.cs / 1305376 / WebService.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

/* 
 */ 
namespace System.Web.Services {
 
    using System.Diagnostics;
    using System.Web;
    using System.ComponentModel;
    using System.Web.SessionState; 
    using System.Web.Services.Protocols;
    using System.Security.Principal; 
    using System.Security.Permissions; 
    using System.Runtime.InteropServices;
 
    /// 
    /// 
    ///    Defines the
    ///       optional base class for Web Services, which provides direct access to common 
    ///       ASP.NET objects, like those for application and session state.
    ///  
    public class WebService : MarshalByValueComponent { 

        private HttpContext context; 

        /// 
        /// 
        ///    Gets a 
        ///       reference to the application object for the current HTTP request.
        ///  
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), Description("The ASP.NET application object for the current request.")] 
        public HttpApplicationState Application {
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
            get {
                return Context.Application;
            }
        } 

        ///  
        ///  
        ///    Gets the ASP.NET Context object for the current request,
        ///       which encapsulates all HTTP-specific context 
        ///       used by the HTTP server to process Web requests.
        /// 
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceContext)]
        public HttpContext Context { 
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
            get { 
                if (context == null) 
                    context = HttpContext.Current;
                if (context == null) 
                    throw new InvalidOperationException(Res.GetString(Res.WebMissingHelpContext));
                return context;
            }
        } 

        ///  
        ///  
        /// Gets a reference to the 
        /// instance for the current request. 
        /// 
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceSession)]
        public HttpSessionState Session {
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 
            get {
                return Context.Session; 
            } 
        }
 
        /// 
        /// 
        /// Gets a reference to the 
        /// for the current request. 
        /// 
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceServer)] 
        public HttpServerUtility Server { 
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
            get { 
                return Context.Server;
            }
        }
 
        /// 
        ///  
        ///    Gets the ASP.NET server User object, used for authorizing the request. 
        /// 
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceUser)] 
        public IPrincipal User {
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
            get {
                return Context.User; 
            }
        } 
 
        /// 
        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceSoapVersion), ComVisible(false)] 
        public SoapProtocolVersion SoapVersion {
            [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
            get {
                object o = Context.Items[SoapVersionContextSlot]; 
                if (o != null && o is SoapProtocolVersion)
                    return (SoapProtocolVersion)o; 
                else 
                    return SoapProtocolVersion.Default;
            } 
        }

        internal static readonly string SoapVersionContextSlot = "WebServiceSoapVersion";
 
        internal void SetContext(HttpContext context) {
            this.context = context; 
        } 

    } 
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.


                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK