Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / UserControlParser.cs / 1305376 / UserControlParser.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the ASP.NET template parser * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System; using System.Collections; using System.IO; using System.Security; using System.Security.Permissions; using System.Web.Compilation; using System.Globalization; using System.Web.Caching; /* * Parser for declarative controls */ internal class UserControlParser : TemplateControlParser { private bool _fSharedPartialCaching; private string _provider; internal bool FSharedPartialCaching { get { return _fSharedPartialCaching ; } } internal string Provider { get { return _provider ; } } // Get default settings from config internal override void ProcessConfigSettings() { base.ProcessConfigSettings(); ApplyBaseType(); } // Get the default baseType from PagesConfig. internal virtual void ApplyBaseType() { if (PageParser.DefaultUserControlBaseType != null) { BaseType = PageParser.DefaultUserControlBaseType; } else if (PagesConfig != null && PagesConfig.UserControlBaseTypeInternal != null) { BaseType = PagesConfig.UserControlBaseTypeInternal; } } internal override Type DefaultBaseType { get { return typeof(System.Web.UI.UserControl); } } internal const string defaultDirectiveName = "control"; internal override string DefaultDirectiveName { get { return defaultDirectiveName; } } internal override Type DefaultFileLevelBuilderType { get { return typeof(FileLevelUserControlBuilder); } } internal override RootBuilder CreateDefaultFileLevelBuilder() { return new FileLevelUserControlBuilder(); } /* * Process the contents of the <%@ OutputCache ... %> directive */ internal override void ProcessOutputCacheDirective(string directiveName, IDictionary directive) { string sqlDependency; Util.GetAndRemoveBooleanAttribute(directive, "shared", ref _fSharedPartialCaching); _provider = Util.GetAndRemoveNonEmptyAttribute(directive, "providerName"); if (_provider == OutputCache.ASPNET_INTERNAL_PROVIDER_NAME) { _provider = null; } OutputCache.ThrowIfProviderNotFound(_provider); sqlDependency = Util.GetAndRemoveNonEmptyAttribute(directive, "sqldependency"); if (sqlDependency != null) { // Validate the sqldependency attribute SqlCacheDependency.ValidateOutputCacheDependencyString(sqlDependency, false); OutputCacheParameters.SqlDependency = sqlDependency; } base.ProcessOutputCacheDirective(directiveName, directive); } internal override bool FVaryByParamsRequiredOnOutputCache { get { return OutputCacheParameters.VaryByControl == null; } } internal override string UnknownOutputCacheAttributeError { get { return SR.Attr_not_supported_in_ucdirective; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the ASP.NET template parser * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System; using System.Collections; using System.IO; using System.Security; using System.Security.Permissions; using System.Web.Compilation; using System.Globalization; using System.Web.Caching; /* * Parser for declarative controls */ internal class UserControlParser : TemplateControlParser { private bool _fSharedPartialCaching; private string _provider; internal bool FSharedPartialCaching { get { return _fSharedPartialCaching ; } } internal string Provider { get { return _provider ; } } // Get default settings from config internal override void ProcessConfigSettings() { base.ProcessConfigSettings(); ApplyBaseType(); } // Get the default baseType from PagesConfig. internal virtual void ApplyBaseType() { if (PageParser.DefaultUserControlBaseType != null) { BaseType = PageParser.DefaultUserControlBaseType; } else if (PagesConfig != null && PagesConfig.UserControlBaseTypeInternal != null) { BaseType = PagesConfig.UserControlBaseTypeInternal; } } internal override Type DefaultBaseType { get { return typeof(System.Web.UI.UserControl); } } internal const string defaultDirectiveName = "control"; internal override string DefaultDirectiveName { get { return defaultDirectiveName; } } internal override Type DefaultFileLevelBuilderType { get { return typeof(FileLevelUserControlBuilder); } } internal override RootBuilder CreateDefaultFileLevelBuilder() { return new FileLevelUserControlBuilder(); } /* * Process the contents of the <%@ OutputCache ... %> directive */ internal override void ProcessOutputCacheDirective(string directiveName, IDictionary directive) { string sqlDependency; Util.GetAndRemoveBooleanAttribute(directive, "shared", ref _fSharedPartialCaching); _provider = Util.GetAndRemoveNonEmptyAttribute(directive, "providerName"); if (_provider == OutputCache.ASPNET_INTERNAL_PROVIDER_NAME) { _provider = null; } OutputCache.ThrowIfProviderNotFound(_provider); sqlDependency = Util.GetAndRemoveNonEmptyAttribute(directive, "sqldependency"); if (sqlDependency != null) { // Validate the sqldependency attribute SqlCacheDependency.ValidateOutputCacheDependencyString(sqlDependency, false); OutputCacheParameters.SqlDependency = sqlDependency; } base.ProcessOutputCacheDirective(directiveName, directive); } internal override bool FVaryByParamsRequiredOnOutputCache { get { return OutputCacheParameters.VaryByControl == null; } } internal override string UnknownOutputCacheAttributeError { get { return SR.Attr_not_supported_in_ucdirective; } } } } // 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
- WebPartConnection.cs
- ManipulationBoundaryFeedbackEventArgs.cs
- CommonRemoteMemoryBlock.cs
- UnaryNode.cs
- SafePointer.cs
- WebBrowserPermission.cs
- RefExpr.cs
- IfJoinedCondition.cs
- DrawingBrush.cs
- GridSplitter.cs
- XmlSignificantWhitespace.cs
- ClientScriptManager.cs
- SmtpNtlmAuthenticationModule.cs
- UniformGrid.cs
- DefaultValueAttribute.cs
- HighlightVisual.cs
- DbProviderSpecificTypePropertyAttribute.cs
- Parameter.cs
- ConditionCollection.cs
- DataGridViewCell.cs
- ScriptReferenceBase.cs
- SimpleHandlerFactory.cs
- XsltArgumentList.cs
- LayoutTableCell.cs
- IdnMapping.cs
- Char.cs
- XmlDocumentType.cs
- PersistencePipeline.cs
- XmlIgnoreAttribute.cs
- CompilerLocalReference.cs
- DiagnosticsConfigurationHandler.cs
- ApplicationId.cs
- ColorConvertedBitmap.cs
- AnonymousIdentificationModule.cs
- WebPartZone.cs
- SqlUtil.cs
- InvalidPropValue.cs
- AsynchronousChannel.cs
- DataServiceQueryException.cs
- XmlObjectSerializerWriteContext.cs
- BitmapEffectvisualstate.cs
- EntityException.cs
- GridViewItemAutomationPeer.cs
- XPathConvert.cs
- AppLevelCompilationSectionCache.cs
- MobileControlBuilder.cs
- ObjectDataSourceChooseMethodsPanel.cs
- InheritanceAttribute.cs
- ScriptServiceAttribute.cs
- AnonymousIdentificationModule.cs
- TimelineGroup.cs
- RoleService.cs
- COSERVERINFO.cs
- StyleCollectionEditor.cs
- UserNamePasswordValidationMode.cs
- FragmentQueryKB.cs
- DataSourceCacheDurationConverter.cs
- TextBreakpoint.cs
- CqlIdentifiers.cs
- Operand.cs
- Peer.cs
- GenericQueueSurrogate.cs
- XmlDataProvider.cs
- SessionStateModule.cs
- ComponentEvent.cs
- FrameworkRichTextComposition.cs
- FontFamily.cs
- ProfileSection.cs
- DataList.cs
- Model3DGroup.cs
- ProcessHostConfigUtils.cs
- SamlSubjectStatement.cs
- ConnectionManagementElementCollection.cs
- RenderContext.cs
- TreeViewTemplateSelector.cs
- CompositeActivityMarkupSerializer.cs
- LifetimeServices.cs
- FlatButtonAppearance.cs
- XPathDocumentIterator.cs
- SymbolPair.cs
- XmlHierarchyData.cs
- SatelliteContractVersionAttribute.cs
- SslStream.cs
- GcHandle.cs
- HtmlTitle.cs
- XmlUTF8TextWriter.cs
- Paragraph.cs
- EnvironmentPermission.cs
- TableLayoutPanelResizeGlyph.cs
- sitestring.cs
- _DisconnectOverlappedAsyncResult.cs
- EpmSyndicationContentDeSerializer.cs
- CreatingCookieEventArgs.cs
- HttpCapabilitiesEvaluator.cs
- BamlVersionHeader.cs
- UniformGrid.cs
- X509Utils.cs
- AccessKeyManager.cs
- UnmanagedBitmapWrapper.cs
- _SslSessionsCache.cs