Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / Script / Services / PageClientProxyGenerator.cs / 1305376 / PageClientProxyGenerator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Script.Services { using System.Web; using System.Web.UI; internal class PageClientProxyGenerator : ClientProxyGenerator { private string _path; internal PageClientProxyGenerator(IPage page, bool debug) : this(VirtualPathUtility.MakeRelative(page.Request.Path, page.Request.FilePath), debug) { // Dev10 Bug 597146: Use VirtualPathUtility to build a relative path from the path to the file. // Previously just Page.Request.FilePath was used, which was for example, /app/foo/page.aspx, // but this breaks with cookieless sessions since the url is /app/foo/(sessionid)/page.aspx. // We need to make a relative path from page.Request.Path (e.g. /app/foo) to page.Request.FilePath // (e.g. /app/foo/page.aspx) rather than just strip off 'page.aspx' with Path.GetFileName, because // the url may include PathInfo, such as "/app/foo/page.aspx/pathinfo1/pathinfo2", and in that case // we need the path to be ../../page.aspx } internal PageClientProxyGenerator(string path, bool debug) { _path = path; _debugMode = debug; } internal static string GetClientProxyScript(HttpContext context, IPage page, bool debug) { // Do nothing during unit tests which have no context or page if (context == null || page == null) return null; WebServiceData webServiceData = WebServiceData.GetWebServiceData(context, page.AppRelativeVirtualPath, false /*failIfNoData*/, true /*pageMethods */); if (webServiceData == null) return null; PageClientProxyGenerator proxyGenerator = new PageClientProxyGenerator(page, debug); return proxyGenerator.GetClientProxyScript(webServiceData); } protected override void GenerateTypeDeclaration(WebServiceData webServiceData, bool genClass) { if (genClass) { _builder.Append("PageMethods.prototype = "); } else { _builder.Append("var PageMethods = "); } } protected override string GetProxyTypeName(WebServiceData data) { return "PageMethods"; } protected override string GetProxyPath() { return _path; } } } // 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
- SystemDropShadowChrome.cs
- InternalConfigHost.cs
- StrokeCollection2.cs
- ProtocolsConfiguration.cs
- FollowerQueueCreator.cs
- Rotation3D.cs
- BreakSafeBase.cs
- ThicknessConverter.cs
- ZeroOpNode.cs
- RegexParser.cs
- WorkflowRuntimeServiceElementCollection.cs
- UdpSocket.cs
- TextTreeFixupNode.cs
- TransformGroup.cs
- DoubleConverter.cs
- SystemParameters.cs
- TimeStampChecker.cs
- KnownBoxes.cs
- Camera.cs
- StorageComplexTypeMapping.cs
- TraceHandlerErrorFormatter.cs
- WorkflowTimerService.cs
- BaseParser.cs
- OutputScope.cs
- MessageEncodingBindingElement.cs
- MenuItemStyleCollection.cs
- EmptyCollection.cs
- TableRowCollection.cs
- Socket.cs
- SqlCharStream.cs
- XamlFigureLengthSerializer.cs
- ContextProperty.cs
- PerformanceCounterCategory.cs
- EventLogPropertySelector.cs
- CommandDesigner.cs
- SplitterEvent.cs
- TransactionException.cs
- ComponentConverter.cs
- ButtonBaseAutomationPeer.cs
- DependencySource.cs
- PlanCompiler.cs
- SystemDiagnosticsSection.cs
- GridViewAutomationPeer.cs
- PersianCalendar.cs
- MimeBasePart.cs
- DataGridViewIntLinkedList.cs
- Resources.Designer.cs
- ArrayMergeHelper.cs
- LinearGradientBrush.cs
- SupportsEventValidationAttribute.cs
- AttachInfo.cs
- SqlFunctionAttribute.cs
- StaticSiteMapProvider.cs
- BamlLocalizableResourceKey.cs
- LineInfo.cs
- ExecutionContext.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- ObjectListField.cs
- SpecialFolderEnumConverter.cs
- OleDbDataAdapter.cs
- SystemParameters.cs
- SQLBytes.cs
- _HeaderInfoTable.cs
- AvtEvent.cs
- BasicDesignerLoader.cs
- RectKeyFrameCollection.cs
- SqlDataSourceQueryConverter.cs
- RegexMatchCollection.cs
- TextBox.cs
- MappingSource.cs
- PositiveTimeSpanValidatorAttribute.cs
- Transform3DGroup.cs
- TextServicesDisplayAttribute.cs
- Triplet.cs
- TemplateColumn.cs
- RefExpr.cs
- CorrelationService.cs
- Exception.cs
- FixedPageAutomationPeer.cs
- JsonObjectDataContract.cs
- TraceXPathNavigator.cs
- GridViewCellAutomationPeer.cs
- GlyphInfoList.cs
- ClassGenerator.cs
- UnauthorizedWebPart.cs
- COM2ComponentEditor.cs
- PackagingUtilities.cs
- WorkflowDesignerMessageFilter.cs
- SqlGatherConsumedAliases.cs
- EventLogPermissionEntry.cs
- FixUp.cs
- HttpClientCertificate.cs
- Timeline.cs
- DeviceContexts.cs
- WindowsGraphics.cs
- HttpHostedTransportConfiguration.cs
- BamlStream.cs
- SynchronizationScope.cs
- WCFServiceClientProxyGenerator.cs
- SwitchAttribute.cs