Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / xsp / System / Web / Extensions / ui / ServiceReference.cs / 2 / ServiceReference.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.Compilation; using System.Web.UI; using System.Web.Resources; using System.Web.Script.Services; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Path") ] public class ServiceReference { private string _path; private bool _inlineScript; public ServiceReference() { } public ServiceReference(string path) { Path = path; } [ ResourceDescription("ServiceReference_InlineScript"), DefaultValue(false), Category("Behavior") ] public bool InlineScript { get { return _inlineScript; } set { _inlineScript = value; } } [ ResourceDescription("ServiceReference_Path"), DefaultValue(""), Category("Behavior"), UrlProperty() ] public string Path { get { if (_path == null) { return String.Empty; } return _path; } set { _path = value; } } private string GetInlineScript(Control containingControl, HttpContext context, bool debug) { // Do not attempt to resolve inline service references on PageMethod requests. if (RestHandlerFactory.IsRestMethodCall(context.Request)) { return String.Empty; } string servicePath = GetServicePath(containingControl, false); try { servicePath = VirtualPathUtility.Combine(context.Request.FilePath, servicePath); } catch { throw new ArgumentException(String.Format(CultureInfo.InvariantCulture, AtlasWeb.WebService_InvalidInlineVirtualPath, servicePath)); } return WebServiceClientProxyGenerator.GetInlineClientProxyScript(servicePath, context, debug); } private string GetServicePath(Control containingControl, bool encodeSpaces) { string path = Path; if (String.IsNullOrEmpty(path)) { throw new InvalidOperationException(AtlasWeb.ServiceReference_PathCannotBeEmpty); } if (encodeSpaces) { path = containingControl.ResolveClientUrl(path); } else { path = containingControl.ResolveUrl(path); } return path; } private string GetProxyPath(Control containingControl, bool debug) { if (debug) return GetServicePath(containingControl, true) + RestHandlerFactory.ClientDebugProxyRequestPathInfo; else return GetServicePath(containingControl, true) + RestHandlerFactory.ClientProxyRequestPathInfo; } internal void Register(Control containingControl, HttpContext context, ScriptManager scriptManager, bool debug) { if (InlineScript) { RenderClientScriptBlock(GetInlineScript(containingControl, context, debug), scriptManager); } else { RegisterClientScriptInclude(GetProxyPath(containingControl, debug), scriptManager); } } private static void RegisterClientScriptInclude(string path, ScriptManager scriptManager) { scriptManager.RegisterClientScriptIncludeInternal(scriptManager, typeof(ScriptManager), path, path); } private static void RenderClientScriptBlock(string script, ScriptManager scriptManager) { scriptManager.RegisterClientScriptBlockInternal(scriptManager, typeof(ScriptManager), script, script, true); } [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")] public override string ToString() { if (!String.IsNullOrEmpty(Path)) { return Path; } else { return GetType().Name; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.Compilation; using System.Web.UI; using System.Web.Resources; using System.Web.Script.Services; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Path") ] public class ServiceReference { private string _path; private bool _inlineScript; public ServiceReference() { } public ServiceReference(string path) { Path = path; } [ ResourceDescription("ServiceReference_InlineScript"), DefaultValue(false), Category("Behavior") ] public bool InlineScript { get { return _inlineScript; } set { _inlineScript = value; } } [ ResourceDescription("ServiceReference_Path"), DefaultValue(""), Category("Behavior"), UrlProperty() ] public string Path { get { if (_path == null) { return String.Empty; } return _path; } set { _path = value; } } private string GetInlineScript(Control containingControl, HttpContext context, bool debug) { // Do not attempt to resolve inline service references on PageMethod requests. if (RestHandlerFactory.IsRestMethodCall(context.Request)) { return String.Empty; } string servicePath = GetServicePath(containingControl, false); try { servicePath = VirtualPathUtility.Combine(context.Request.FilePath, servicePath); } catch { throw new ArgumentException(String.Format(CultureInfo.InvariantCulture, AtlasWeb.WebService_InvalidInlineVirtualPath, servicePath)); } return WebServiceClientProxyGenerator.GetInlineClientProxyScript(servicePath, context, debug); } private string GetServicePath(Control containingControl, bool encodeSpaces) { string path = Path; if (String.IsNullOrEmpty(path)) { throw new InvalidOperationException(AtlasWeb.ServiceReference_PathCannotBeEmpty); } if (encodeSpaces) { path = containingControl.ResolveClientUrl(path); } else { path = containingControl.ResolveUrl(path); } return path; } private string GetProxyPath(Control containingControl, bool debug) { if (debug) return GetServicePath(containingControl, true) + RestHandlerFactory.ClientDebugProxyRequestPathInfo; else return GetServicePath(containingControl, true) + RestHandlerFactory.ClientProxyRequestPathInfo; } internal void Register(Control containingControl, HttpContext context, ScriptManager scriptManager, bool debug) { if (InlineScript) { RenderClientScriptBlock(GetInlineScript(containingControl, context, debug), scriptManager); } else { RegisterClientScriptInclude(GetProxyPath(containingControl, debug), scriptManager); } } private static void RegisterClientScriptInclude(string path, ScriptManager scriptManager) { scriptManager.RegisterClientScriptIncludeInternal(scriptManager, typeof(ScriptManager), path, path); } private static void RenderClientScriptBlock(string script, ScriptManager scriptManager) { scriptManager.RegisterClientScriptBlockInternal(scriptManager, typeof(ScriptManager), script, script, true); } [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")] public override string ToString() { if (!String.IsNullOrEmpty(Path)) { return Path; } else { return GetType().Name; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- pingexception.cs
- TextTrailingWordEllipsis.cs
- AtomContentProperty.cs
- DataGridViewLinkColumn.cs
- FolderLevelBuildProviderCollection.cs
- WebEvents.cs
- SignatureResourcePool.cs
- BaseResourcesBuildProvider.cs
- SqlCacheDependency.cs
- DetailsViewInsertEventArgs.cs
- CharacterShapingProperties.cs
- ConfigurationStrings.cs
- EntityDescriptor.cs
- RijndaelManagedTransform.cs
- ThrowOnMultipleAssignment.cs
- returneventsaver.cs
- CompareValidator.cs
- DateTimeConstantAttribute.cs
- ApplicationSettingsBase.cs
- WebEventCodes.cs
- __Error.cs
- COAUTHIDENTITY.cs
- ToolStripDropDownDesigner.cs
- ProfileProvider.cs
- ActivityScheduledRecord.cs
- WebPartConnection.cs
- RegexMatchCollection.cs
- DesignOnlyAttribute.cs
- HostExecutionContextManager.cs
- PathHelper.cs
- SubMenuStyle.cs
- OrderedDictionaryStateHelper.cs
- SqlExpander.cs
- VBCodeProvider.cs
- ServerValidateEventArgs.cs
- ComponentEditorForm.cs
- ClientUrlResolverWrapper.cs
- ServerIdentity.cs
- HttpStreamMessage.cs
- FixedDocument.cs
- BevelBitmapEffect.cs
- WebBrowserPermission.cs
- Condition.cs
- Console.cs
- DesignerHelpers.cs
- GACMembershipCondition.cs
- SafeNativeMethods.cs
- EnumBuilder.cs
- DefaultShape.cs
- MonthCalendar.cs
- ObjectNotFoundException.cs
- ScrollChangedEventArgs.cs
- Win32MouseDevice.cs
- PrincipalPermissionMode.cs
- MLangCodePageEncoding.cs
- JsonServiceDocumentSerializer.cs
- TypeInitializationException.cs
- TextPenaltyModule.cs
- SamlConstants.cs
- SchemaManager.cs
- TableRowCollection.cs
- DataPagerFieldCommandEventArgs.cs
- TextRange.cs
- SpeechUI.cs
- TextRangeAdaptor.cs
- RenderDataDrawingContext.cs
- SinglePhaseEnlistment.cs
- CodeVariableDeclarationStatement.cs
- EncryptedReference.cs
- BindUriHelper.cs
- SamlSecurityToken.cs
- ToolStripDropDownClosedEventArgs.cs
- XamlFxTrace.cs
- XPathDescendantIterator.cs
- ResourcePool.cs
- ProfileProvider.cs
- PolicyLevel.cs
- XmlSchemaRedefine.cs
- ClassData.cs
- SessionStateSection.cs
- SqlVersion.cs
- _HTTPDateParse.cs
- RequestCachePolicy.cs
- DataGridViewTopLeftHeaderCell.cs
- DesignerActionMethodItem.cs
- TextWriterTraceListener.cs
- ApplicationActivator.cs
- sqlpipe.cs
- KerberosSecurityTokenAuthenticator.cs
- AttachmentService.cs
- XPathScanner.cs
- AnnotationHelper.cs
- EasingFunctionBase.cs
- ManagedWndProcTracker.cs
- HttpCookieCollection.cs
- SystemWebSectionGroup.cs
- HttpResponse.cs
- CompilerWrapper.cs
- KoreanCalendar.cs
- SettingsSavedEventArgs.cs