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
- ContentPosition.cs
- DataBoundLiteralControl.cs
- OperationExecutionFault.cs
- ApplicationFileCodeDomTreeGenerator.cs
- Ipv6Element.cs
- SimpleBitVector32.cs
- ConfigXmlCDataSection.cs
- SoapFault.cs
- IODescriptionAttribute.cs
- DocumentPaginator.cs
- SqlProfileProvider.cs
- _SslState.cs
- TextTabProperties.cs
- ProviderConnectionPointCollection.cs
- RestHandlerFactory.cs
- OSFeature.cs
- KeyTimeConverter.cs
- SR.cs
- ToolStripItemDataObject.cs
- ChildDocumentBlock.cs
- SortedSet.cs
- OdbcException.cs
- CharacterMetrics.cs
- ObjectMemberMapping.cs
- WebPartMovingEventArgs.cs
- SafeEventLogWriteHandle.cs
- SchemaTableColumn.cs
- CacheModeValueSerializer.cs
- XmlDocumentViewSchema.cs
- BatchParser.cs
- arclist.cs
- ProcessInfo.cs
- AutomationAttributeInfo.cs
- HtmlWindow.cs
- FilterElement.cs
- TableColumn.cs
- StyleSelector.cs
- TripleDESCryptoServiceProvider.cs
- ImageListStreamer.cs
- SafeNativeMethods.cs
- BasicCellRelation.cs
- PointIndependentAnimationStorage.cs
- ToolStripControlHost.cs
- CommandBindingCollection.cs
- MatrixConverter.cs
- localization.cs
- AttributeXamlType.cs
- TextServicesLoader.cs
- WebPartsPersonalization.cs
- TypeElementCollection.cs
- PreviewPrintController.cs
- AsyncResult.cs
- TextEndOfSegment.cs
- BindStream.cs
- DocumentScope.cs
- ThrowHelper.cs
- CurrentChangingEventManager.cs
- StaticSiteMapProvider.cs
- CacheSection.cs
- SecurityChannelListener.cs
- HttpListenerException.cs
- DelegatingTypeDescriptionProvider.cs
- ImageEditor.cs
- Vector3DCollectionConverter.cs
- RoutedUICommand.cs
- ConfigurationLockCollection.cs
- HitTestWithPointDrawingContextWalker.cs
- WindowsFormsHostAutomationPeer.cs
- ContentOperations.cs
- ActivityTypeResolver.xaml.cs
- VisualStyleInformation.cs
- ActivitySurrogate.cs
- EntityTypeBase.cs
- Debug.cs
- CodeArrayIndexerExpression.cs
- DbSource.cs
- HandlerMappingMemo.cs
- CodeDOMUtility.cs
- DrawingImage.cs
- EFTableProvider.cs
- PointCollection.cs
- DragEventArgs.cs
- HttpDebugHandler.cs
- OptimalBreakSession.cs
- NamedPermissionSet.cs
- File.cs
- ScrollItemPattern.cs
- MsmqReceiveParameters.cs
- DataChangedEventManager.cs
- SQLCharsStorage.cs
- ContainerUtilities.cs
- ConnectionPoolManager.cs
- DefaultHttpHandler.cs
- ForeignKeyConstraint.cs
- ListViewHitTestInfo.cs
- WinEventTracker.cs
- __TransparentProxy.cs
- DateTimeValueSerializerContext.cs
- AudioStateChangedEventArgs.cs
- SerializationAttributes.cs