Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / Mobile / MobileRedirect.cs / 1305376 / MobileRedirect.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Web; using System.Web.UI.MobileControls; namespace System.Web.Mobile { /* * Mobile Redirect * An internal helper class that provides methods to work around redirection issues with * mobile devices. * * Copyright (c) 2000 Microsoft Corporation */ [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class MobileRedirect { // internal static readonly String QueryStringVariable = "__redir"; internal static readonly String QueryStringValue = "1"; /* Obsolete internal static readonly String QueryStringAssignment = QueryStringVariable + "=" + QueryStringValue; private static readonly String _redirectQueryString = "?" + QueryStringAssignment; private static readonly String _redirectQueryStringInline = QueryStringAssignment + "&"; private static readonly String _disallowRedirectionKey = "_disallowRedirection"; */ // This class should not be instantiated. private MobileRedirect() { } /* Obsolete internal static void AllowRedirection(HttpContext context) { context.Items.Remove(_disallowRedirectionKey); } internal static void DisallowRedirection(HttpContext context) { context.Items[_disallowRedirectionKey] = 1; } internal static void CheckForInvalidRedirection(HttpContext context) { HttpResponse response = context.Response; if (response != null && response.StatusCode == 302 && context.Items[_disallowRedirectionKey] != null) { response.ClearHeaders(); throw new Exception(SR.GetString(SR.MobileRedirect_RedirectNotAllowed)); } } */ /* functionality merged into Response.Redirect internal static void RedirectToUrl(HttpContext context, String url, bool endResponse) { //do not add __redir=1 if it already exists int i = url.IndexOf(QueryStringAssignment); if(i == -1) { i = url.IndexOf('?'); if (i >= 0) { url = url.Insert(i + 1, _redirectQueryStringInline); } else { url = String.Concat(url, _redirectQueryString); } } AllowRedirection(context); MobilePage page = context.Handler as MobilePage; // cookieless authentication already handles this. if ( (page != null) && (!page.Device.SupportsRedirectWithCookie) ) { String formsAuthCookieName = Security.FormsAuthentication.FormsCookieName; if(formsAuthCookieName != String.Empty) { context.Response.Cookies.Remove(formsAuthCookieName); } } context.Response.Redirect(url, endResponse); } */ } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Web; using System.Web.UI.MobileControls; namespace System.Web.Mobile { /* * Mobile Redirect * An internal helper class that provides methods to work around redirection issues with * mobile devices. * * Copyright (c) 2000 Microsoft Corporation */ [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class MobileRedirect { // internal static readonly String QueryStringVariable = "__redir"; internal static readonly String QueryStringValue = "1"; /* Obsolete internal static readonly String QueryStringAssignment = QueryStringVariable + "=" + QueryStringValue; private static readonly String _redirectQueryString = "?" + QueryStringAssignment; private static readonly String _redirectQueryStringInline = QueryStringAssignment + "&"; private static readonly String _disallowRedirectionKey = "_disallowRedirection"; */ // This class should not be instantiated. private MobileRedirect() { } /* Obsolete internal static void AllowRedirection(HttpContext context) { context.Items.Remove(_disallowRedirectionKey); } internal static void DisallowRedirection(HttpContext context) { context.Items[_disallowRedirectionKey] = 1; } internal static void CheckForInvalidRedirection(HttpContext context) { HttpResponse response = context.Response; if (response != null && response.StatusCode == 302 && context.Items[_disallowRedirectionKey] != null) { response.ClearHeaders(); throw new Exception(SR.GetString(SR.MobileRedirect_RedirectNotAllowed)); } } */ /* functionality merged into Response.Redirect internal static void RedirectToUrl(HttpContext context, String url, bool endResponse) { //do not add __redir=1 if it already exists int i = url.IndexOf(QueryStringAssignment); if(i == -1) { i = url.IndexOf('?'); if (i >= 0) { url = url.Insert(i + 1, _redirectQueryStringInline); } else { url = String.Concat(url, _redirectQueryString); } } AllowRedirection(context); MobilePage page = context.Handler as MobilePage; // cookieless authentication already handles this. if ( (page != null) && (!page.Device.SupportsRedirectWithCookie) ) { String formsAuthCookieName = Security.FormsAuthentication.FormsCookieName; if(formsAuthCookieName != String.Empty) { context.Response.Cookies.Remove(formsAuthCookieName); } } context.Response.Redirect(url, endResponse); } */ } } // 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
- EventTask.cs
- WindowsTokenRoleProvider.cs
- ThousandthOfEmRealPoints.cs
- ParseElement.cs
- PageCodeDomTreeGenerator.cs
- SpotLight.cs
- WebPartEventArgs.cs
- HitTestParameters3D.cs
- RegionData.cs
- ToolStripMenuItem.cs
- SkipQueryOptionExpression.cs
- FormsAuthenticationUserCollection.cs
- TextServicesDisplayAttributePropertyRanges.cs
- CodeIndexerExpression.cs
- UIntPtr.cs
- ActiveXMessageFormatter.cs
- RootBuilder.cs
- ServiceElementCollection.cs
- _SSPISessionCache.cs
- Section.cs
- FormatSettings.cs
- WindowPatternIdentifiers.cs
- GlobalProxySelection.cs
- SecurityException.cs
- XmlIlGenerator.cs
- ClientRuntimeConfig.cs
- Form.cs
- XhtmlTextWriter.cs
- Facet.cs
- PageParserFilter.cs
- _NegoStream.cs
- BufferAllocator.cs
- ToolstripProfessionalRenderer.cs
- WebPartsPersonalization.cs
- DataRowCollection.cs
- DecimalAverageAggregationOperator.cs
- PackWebResponse.cs
- ToolStripItemClickedEventArgs.cs
- ParallelRangeManager.cs
- UrlPath.cs
- ListDataBindEventArgs.cs
- CompilationUtil.cs
- VerticalAlignConverter.cs
- BackgroundFormatInfo.cs
- CultureTable.cs
- RouteParameter.cs
- CompilationSection.cs
- CompilationPass2Task.cs
- DataTableMappingCollection.cs
- SortQuery.cs
- VisualCollection.cs
- RenderTargetBitmap.cs
- CSharpCodeProvider.cs
- ColumnPropertiesGroup.cs
- XPathBinder.cs
- PublisherMembershipCondition.cs
- PointUtil.cs
- DependencyProperty.cs
- IconHelper.cs
- EntityDataSourceReferenceGroup.cs
- Decimal.cs
- HwndHostAutomationPeer.cs
- EntitySqlQueryState.cs
- InternalMappingException.cs
- XmlNavigatorStack.cs
- SafeHandles.cs
- ServiceInfoCollection.cs
- UseLicense.cs
- HtmlInputImage.cs
- PageBuildProvider.cs
- Ipv6Element.cs
- ProxyGenerationError.cs
- CharStorage.cs
- ViewKeyConstraint.cs
- SQLBinaryStorage.cs
- ActivityValidationServices.cs
- Scanner.cs
- ReversePositionQuery.cs
- LostFocusEventManager.cs
- IteratorFilter.cs
- IisNotInstalledException.cs
- EntityDataReader.cs
- DigestComparer.cs
- GeometryCombineModeValidation.cs
- ClientProxyGenerator.cs
- Source.cs
- DocumentGridContextMenu.cs
- ObjectDataSourceWizardForm.cs
- PersonalizablePropertyEntry.cs
- XmlName.cs
- ObjectQueryState.cs
- sitestring.cs
- CodeAttachEventStatement.cs
- MessageDesigner.cs
- ByteConverter.cs
- HttpDebugHandler.cs
- AutomationPropertyInfo.cs
- ParenthesizePropertyNameAttribute.cs
- BasicBrowserDialog.cs
- GraphicsPath.cs