Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / RootBuilder.cs / 2 / RootBuilder.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the root builder * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.Runtime.InteropServices; using System; using System.Collections; using System.IO; using System.Reflection; using System.Web; using System.Web.Util; using System.Security.Permissions; ////// /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class RootBuilder : TemplateBuilder { private MainTagNameToTypeMapper _typeMapper; // Contains a mapping of all objects to their associated builders private IDictionary _builtObjects; public RootBuilder() { } ///[To be supplied.] ////// public RootBuilder(TemplateParser parser) { } public IDictionary BuiltObjects { get { // Store any objects created by this control builder // so we can properly persist items if (_builtObjects == null) { _builtObjects = new Hashtable(ReferenceKeyComparer.Default); } return _builtObjects; } } internal void SetTypeMapper(MainTagNameToTypeMapper typeMapper) { _typeMapper = typeMapper; } ///[To be supplied.] ////// public override Type GetChildControlType(string tagName, IDictionary attribs) { // Is there a type to handle this control Type type = _typeMapper.GetControlType(tagName, attribs, true /*fAllowHtmlTags*/); return type; } internal override void PrepareNoCompilePageSupport() { base.PrepareNoCompilePageSupport(); // This is needed to break any connection with the TemplateParser, allowing it // to be fully collected when the parsing is complete _typeMapper = null; } private class ReferenceKeyComparer : IComparer, IEqualityComparer { internal static readonly ReferenceKeyComparer Default = new ReferenceKeyComparer(); bool IEqualityComparer.Equals(object x, object y) { return Object.ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { return obj.GetHashCode(); } int IComparer.Compare(object x, object y) { if (Object.ReferenceEquals(x, y)) { return 0; } if (x == null) { return -1; } if (y == null) { return 1; } return 1; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.[To be supplied.] ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TransformerInfoCollection.cs
- HttpRuntime.cs
- TableLayout.cs
- DependencyPropertyChangedEventArgs.cs
- TdsParserHelperClasses.cs
- SqlInfoMessageEvent.cs
- UriTemplateClientFormatter.cs
- ManifestResourceInfo.cs
- ExecutionTracker.cs
- XmlLanguageConverter.cs
- XPathException.cs
- ReadOnlyDictionary.cs
- OdbcUtils.cs
- SqlCacheDependency.cs
- DataRecordInfo.cs
- ImageInfo.cs
- ServiceHandle.cs
- COM2ExtendedTypeConverter.cs
- SerializationAttributes.cs
- ToolStripControlHost.cs
- AdapterDictionary.cs
- ImageMap.cs
- SQLByteStorage.cs
- Error.cs
- OdbcParameterCollection.cs
- GraphicsContext.cs
- HtmlShim.cs
- AdCreatedEventArgs.cs
- DefaultHttpHandler.cs
- FlowNode.cs
- util.cs
- PrimaryKeyTypeConverter.cs
- SafeRightsManagementSessionHandle.cs
- ThreadStateException.cs
- CompilationRelaxations.cs
- MemberPathMap.cs
- RelatedImageListAttribute.cs
- StringUtil.cs
- FileLogRecord.cs
- WindowsAuthenticationModule.cs
- ColumnBinding.cs
- LogStore.cs
- TickBar.cs
- ImageSource.cs
- NavigationWindowAutomationPeer.cs
- ItemList.cs
- XamlStream.cs
- ConditionValidator.cs
- PublishLicense.cs
- SqlDeflator.cs
- MailSettingsSection.cs
- StyleSheetDesigner.cs
- Baml6ConstructorInfo.cs
- TrustSection.cs
- XmlSerializerFormatAttribute.cs
- HwndProxyElementProvider.cs
- AuthenticationSection.cs
- MimeWriter.cs
- DataRecordObjectView.cs
- AsyncInvokeContext.cs
- relpropertyhelper.cs
- NaturalLanguageHyphenator.cs
- HostSecurityManager.cs
- _UriTypeConverter.cs
- CountAggregationOperator.cs
- Operand.cs
- EntityTransaction.cs
- MetaModel.cs
- DefaultBinder.cs
- SqlDataSourceCommandEventArgs.cs
- HtmlControl.cs
- StrokeCollection2.cs
- uribuilder.cs
- HtmlTextBoxAdapter.cs
- SerializationSectionGroup.cs
- AnchoredBlock.cs
- EmptyReadOnlyDictionaryInternal.cs
- ActivityExecutor.cs
- SiteMapDataSource.cs
- UserMapPath.cs
- BrowserInteropHelper.cs
- GenericEnumConverter.cs
- TokenizerHelper.cs
- MatrixAnimationUsingPath.cs
- DynamicRenderer.cs
- DependencyObject.cs
- AttributedMetaModel.cs
- glyphs.cs
- RadioButtonList.cs
- Point3DCollectionConverter.cs
- Errors.cs
- ConnectivityStatus.cs
- Image.cs
- MergePropertyDescriptor.cs
- ComponentDispatcher.cs
- CroppedBitmap.cs
- XmlMapping.cs
- JsonMessageEncoderFactory.cs
- BufferAllocator.cs
- SafeBitVector32.cs