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
- BaseUriHelper.cs
- DoubleConverter.cs
- WizardForm.cs
- MeshGeometry3D.cs
- ToolStripPanelDesigner.cs
- AppDomainProtocolHandler.cs
- DBSchemaTable.cs
- StringUtil.cs
- SqlClientPermission.cs
- FixedSOMTextRun.cs
- EmbeddedObject.cs
- ResXDataNode.cs
- DataIdProcessor.cs
- ValidationPropertyAttribute.cs
- DockPatternIdentifiers.cs
- EdmConstants.cs
- BuildResult.cs
- LoadRetryHandler.cs
- DesignerDataColumn.cs
- ApplicationId.cs
- ShaperBuffers.cs
- SubMenuStyleCollection.cs
- DrawListViewItemEventArgs.cs
- HostProtectionException.cs
- LocalIdCollection.cs
- PriorityQueue.cs
- EventListener.cs
- BitmapMetadataBlob.cs
- XmlSecureResolver.cs
- FixedSOMPageConstructor.cs
- UIAgentAsyncEndRequest.cs
- XLinq.cs
- FileSystemWatcher.cs
- CompiledXpathExpr.cs
- ApplicationBuildProvider.cs
- MasterPageParser.cs
- UserNameSecurityTokenProvider.cs
- SoapEnumAttribute.cs
- InvokeWebServiceDesigner.cs
- PresentationUIStyleResources.cs
- DSASignatureDeformatter.cs
- ActivityBuilder.cs
- BooleanStorage.cs
- LinkUtilities.cs
- FormViewDeleteEventArgs.cs
- LinkAreaEditor.cs
- MetadataFile.cs
- SHA512Managed.cs
- CompositeControl.cs
- SmtpMail.cs
- MaterializeFromAtom.cs
- XmlUtf8RawTextWriter.cs
- GraphicsContext.cs
- SoapCodeExporter.cs
- XPathParser.cs
- ManagedFilter.cs
- DoubleAnimation.cs
- BitmapEffectDrawing.cs
- PointAnimationUsingPath.cs
- SpeechRecognitionEngine.cs
- CodeDOMUtility.cs
- XmlSchema.cs
- TextControlDesigner.cs
- GenericUriParser.cs
- MultiPageTextView.cs
- IEnumerable.cs
- WebHttpSecurity.cs
- RegistryKey.cs
- FileClassifier.cs
- RemotingServices.cs
- ModelFunctionTypeElement.cs
- Bookmark.cs
- Matrix.cs
- safelink.cs
- TemplateParser.cs
- PasswordDeriveBytes.cs
- followingquery.cs
- AnimationStorage.cs
- IPEndPointCollection.cs
- BaseTreeIterator.cs
- LinqDataSourceDisposeEventArgs.cs
- DefaultBinder.cs
- DocumentsTrace.cs
- FilterQuery.cs
- ReturnType.cs
- EntityContainerRelationshipSet.cs
- Privilege.cs
- RangeBase.cs
- CheckBoxRenderer.cs
- ScriptReference.cs
- ErrorHandler.cs
- InputScopeConverter.cs
- RootDesignerSerializerAttribute.cs
- CompositionCommandSet.cs
- RemotingServices.cs
- ArgumentValidation.cs
- SmtpNetworkElement.cs
- TextEditorDragDrop.cs
- OleDbException.cs
- MetafileHeader.cs