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
- diagnosticsswitches.cs
- RoutingConfiguration.cs
- DataGridViewElement.cs
- WorkflowDefinitionContext.cs
- CookieParameter.cs
- PolicyManager.cs
- WindowsHyperlink.cs
- EncoderFallback.cs
- Inflater.cs
- ReflectPropertyDescriptor.cs
- SymbolResolver.cs
- SafeCryptContextHandle.cs
- XmlComment.cs
- IIS7UserPrincipal.cs
- OutputCacheSection.cs
- HealthMonitoringSectionHelper.cs
- SecurityTokenSerializer.cs
- Facet.cs
- DataGridViewLinkCell.cs
- EncryptedPackageFilter.cs
- SiteMapHierarchicalDataSourceView.cs
- FontResourceCache.cs
- BigInt.cs
- ControlCachePolicy.cs
- DataGridTable.cs
- xamlnodes.cs
- WCFBuildProvider.cs
- SizeChangedEventArgs.cs
- InstancePersistenceEvent.cs
- Configuration.cs
- UnauthorizedWebPart.cs
- CheckBoxAutomationPeer.cs
- SoapAttributeOverrides.cs
- BufferedWebEventProvider.cs
- CryptoConfig.cs
- PropertyCondition.cs
- MethodExpr.cs
- DateTimeAutomationPeer.cs
- DataSourceControlBuilder.cs
- WebServiceErrorEvent.cs
- WebBrowserEvent.cs
- ValidationErrorEventArgs.cs
- MetadataFile.cs
- CodeIndexerExpression.cs
- VariantWrapper.cs
- DataServiceProviderWrapper.cs
- DispatcherExceptionEventArgs.cs
- DataChangedEventManager.cs
- MimeMapping.cs
- CollectionView.cs
- ListViewCancelEventArgs.cs
- EntityParameter.cs
- TextTreeInsertElementUndoUnit.cs
- ACE.cs
- DataGridViewRowCollection.cs
- ModifiableIteratorCollection.cs
- ContractHandle.cs
- ToolboxDataAttribute.cs
- DataTablePropertyDescriptor.cs
- Operators.cs
- BitmapEffectState.cs
- TransformValueSerializer.cs
- PeerReferralPolicy.cs
- FormClosedEvent.cs
- DBCSCodePageEncoding.cs
- MetadataExporter.cs
- CurrentChangedEventManager.cs
- VirtualDirectoryMapping.cs
- XamlReader.cs
- EventMappingSettings.cs
- BufferBuilder.cs
- ModelMemberCollection.cs
- RelationshipManager.cs
- ClientTarget.cs
- RelatedImageListAttribute.cs
- TableItemPatternIdentifiers.cs
- FactoryGenerator.cs
- ThicknessAnimationBase.cs
- NetworkStream.cs
- UIHelper.cs
- DbModificationCommandTree.cs
- AppSettings.cs
- QuaternionRotation3D.cs
- MarshalDirectiveException.cs
- XPathScanner.cs
- AutoGeneratedField.cs
- MetadataArtifactLoaderCompositeResource.cs
- GridItemProviderWrapper.cs
- DataViewSettingCollection.cs
- DateTimePicker.cs
- WorkflowInstanceAbortedRecord.cs
- DataGridViewCellStateChangedEventArgs.cs
- DateTimeEditor.cs
- TableCell.cs
- NavigationCommands.cs
- Attributes.cs
- GridItemProviderWrapper.cs
- HuffCodec.cs
- ConfigurationConverterBase.cs
- RepeatButton.cs