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
- CharEnumerator.cs
- XmlSerializerAssemblyAttribute.cs
- PixelFormatConverter.cs
- Transform.cs
- cookie.cs
- TypeRestriction.cs
- EntitySqlQueryBuilder.cs
- BulletDecorator.cs
- ObjectDataSourceStatusEventArgs.cs
- XmlChildEnumerator.cs
- PreviewKeyDownEventArgs.cs
- Int32AnimationUsingKeyFrames.cs
- FormsIdentity.cs
- HtmlHead.cs
- QualificationDataItem.cs
- BaseUriWithWildcard.cs
- ListView.cs
- UncommonField.cs
- TryCatch.cs
- EventWaitHandle.cs
- SecurityPolicySection.cs
- ObjectStateFormatter.cs
- Regex.cs
- Exception.cs
- JsonSerializer.cs
- Camera.cs
- RelationshipDetailsRow.cs
- XmlObjectSerializer.cs
- CompositeControl.cs
- XmlDomTextWriter.cs
- BamlTreeUpdater.cs
- CodeMethodInvokeExpression.cs
- BindableTemplateBuilder.cs
- TrimSurroundingWhitespaceAttribute.cs
- QilName.cs
- TextDecorationLocationValidation.cs
- RuleSettingsCollection.cs
- Boolean.cs
- NameSpaceEvent.cs
- Separator.cs
- RequestQueue.cs
- PostBackOptions.cs
- SubtreeProcessor.cs
- KeyConstraint.cs
- ServerIdentity.cs
- TextAnchor.cs
- DataGridViewRowPostPaintEventArgs.cs
- Debug.cs
- BitmapSource.cs
- StringKeyFrameCollection.cs
- EdmType.cs
- SettingsContext.cs
- DbConnectionStringBuilder.cs
- PropertyReferenceSerializer.cs
- ButtonBaseAdapter.cs
- XmlNamespaceMapping.cs
- InputScopeNameConverter.cs
- COM2PropertyDescriptor.cs
- TargetException.cs
- ReadOnlyCollectionBase.cs
- ErrorStyle.cs
- EntityDataSourceDesigner.cs
- XamlStream.cs
- StringWriter.cs
- CodeTypeOfExpression.cs
- HttpClientCredentialType.cs
- InvariantComparer.cs
- XamlStackWriter.cs
- SimpleTextLine.cs
- RC2CryptoServiceProvider.cs
- BasePattern.cs
- TextBreakpoint.cs
- Pool.cs
- BitmapSourceSafeMILHandle.cs
- BitmapEffectvisualstate.cs
- HorizontalAlignConverter.cs
- DiscreteKeyFrames.cs
- OleDbMetaDataFactory.cs
- PerformanceCounter.cs
- ServiceProviders.cs
- CommandPlan.cs
- Lasso.cs
- RequiredFieldValidator.cs
- PlatformCulture.cs
- ConstraintManager.cs
- DragDropHelper.cs
- AccessDataSourceView.cs
- WebInvokeAttribute.cs
- PropertyStore.cs
- TerminatorSinks.cs
- ServiceOperationHelpers.cs
- ThreadWorkerController.cs
- commandenforcer.cs
- DoubleStorage.cs
- XamlDesignerSerializationManager.cs
- DefaultSection.cs
- RSAOAEPKeyExchangeFormatter.cs
- Visitors.cs
- CommonRemoteMemoryBlock.cs
- ObjectRef.cs