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
- SQLMoney.cs
- InternalBase.cs
- HMACSHA1.cs
- DocumentScope.cs
- PageOutputQuality.cs
- RepeatInfo.cs
- IconHelper.cs
- WindowsSysHeader.cs
- DataGridViewComboBoxColumn.cs
- ImageBrush.cs
- ModifierKeysConverter.cs
- XmlQueryType.cs
- GenericTextProperties.cs
- TypeResolver.cs
- X509CertificateCollection.cs
- ReflectionPermission.cs
- RootDesignerSerializerAttribute.cs
- StrokeSerializer.cs
- DataGridViewRow.cs
- GuidConverter.cs
- EventLogHandle.cs
- ServiceModelEnumValidatorAttribute.cs
- ControlTemplate.cs
- Number.cs
- CapiSymmetricAlgorithm.cs
- Main.cs
- SingleAnimation.cs
- XamlPointCollectionSerializer.cs
- HtmlSelect.cs
- Viewport3DAutomationPeer.cs
- OperationFormatStyle.cs
- MimeBasePart.cs
- BuildProviderAppliesToAttribute.cs
- StaticFileHandler.cs
- RequestCacheValidator.cs
- PageContentAsyncResult.cs
- RuntimeEnvironment.cs
- _NestedMultipleAsyncResult.cs
- DesignTimeParseData.cs
- Configuration.cs
- EntryIndex.cs
- DataGridViewCellLinkedList.cs
- JoinSymbol.cs
- ToolboxService.cs
- TcpSocketManager.cs
- KeyValueInternalCollection.cs
- WebPartsPersonalizationAuthorization.cs
- IRCollection.cs
- XomlCompilerHelpers.cs
- InternalCache.cs
- EventSinkActivity.cs
- SchemaCollectionCompiler.cs
- LocalTransaction.cs
- SortDescription.cs
- MruCache.cs
- MutexSecurity.cs
- DurationConverter.cs
- AdornerLayer.cs
- FastEncoder.cs
- CompiledRegexRunner.cs
- SpeechAudioFormatInfo.cs
- GifBitmapDecoder.cs
- Item.cs
- SystemGatewayIPAddressInformation.cs
- InitializerFacet.cs
- sqlstateclientmanager.cs
- DomainLiteralReader.cs
- AdPostCacheSubstitution.cs
- XmlStringTable.cs
- ServiceDescriptionImporter.cs
- TraceEventCache.cs
- ValidationSummaryDesigner.cs
- HtmlInputImage.cs
- EntitySqlQueryCacheEntry.cs
- Double.cs
- XamlClipboardData.cs
- TransformerInfoCollection.cs
- OracleParameterBinding.cs
- CacheAxisQuery.cs
- HashUtility.cs
- DiscoveryVersion.cs
- XsdValidatingReader.cs
- ProfileSettingsCollection.cs
- FontDifferentiator.cs
- QilSortKey.cs
- Statements.cs
- AsyncDataRequest.cs
- EntityViewGenerationConstants.cs
- WriteStateInfoBase.cs
- MetadataSet.cs
- ColumnBinding.cs
- XmlCollation.cs
- PolicyLevel.cs
- Win32Interop.cs
- Int32Collection.cs
- RenderData.cs
- DataGridTextBoxColumn.cs
- XmlSchemaCollection.cs
- HwndAppCommandInputProvider.cs
- DataGridViewSelectedRowCollection.cs