Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Configuration / VirtualDirectoryMappingCollection.cs / 2 / VirtualDirectoryMappingCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Collections; using System.Collections.Specialized; using System.Configuration; using System.Web.Util; using System.Security.Permissions; // // Collection of VirtualDirectoryMappings. // Follows the standard pattern for collections derived from NameObjectCollectionBase. // [Serializable()] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class VirtualDirectoryMappingCollection : NameObjectCollectionBase { public VirtualDirectoryMappingCollection() : base(StringComparer.OrdinalIgnoreCase) { } public ICollection AllKeys { get { return BaseGetAllKeys(); } } public VirtualDirectoryMapping this[string virtualDirectory] { get { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); return Get(virtualDirectory); } } public VirtualDirectoryMapping this[int index] { get { return Get(index); } } public void Add(string virtualDirectory, VirtualDirectoryMapping mapping) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); if (mapping == null) { throw new ArgumentNullException("mapping"); } if (Get(virtualDirectory) != null) { throw ExceptionUtil.ParameterInvalid("virtualDirectory"); } mapping.SetVirtualDirectory(VirtualPath.CreateAbsoluteAllowNull(virtualDirectory)); BaseAdd(virtualDirectory, mapping); } public void Clear() { BaseClear(); } public void CopyTo(VirtualDirectoryMapping[] array, int index) { if (array == null) { throw new ArgumentNullException("array"); } int c = Count; if (array.Length < c + index) { throw new ArgumentOutOfRangeException("index"); } for (int i = 0, j = index; i < c; i++, j++) { array[j] = Get(i); } } public VirtualDirectoryMapping Get(int index) { return (VirtualDirectoryMapping) BaseGet(index); } public VirtualDirectoryMapping Get(string virtualDirectory) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); return (VirtualDirectoryMapping) BaseGet(virtualDirectory); } public string GetKey(int index) { return BaseGetKey(index); } public void Remove(string virtualDirectory) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); BaseRemove(virtualDirectory); } public void RemoveAt(int index) { BaseRemoveAt(index); } internal VirtualDirectoryMappingCollection Clone() { VirtualDirectoryMappingCollection col = new VirtualDirectoryMappingCollection(); for (int i = 0; i < this.Count; i++) { VirtualDirectoryMapping mapping = this[i]; col.Add(mapping.VirtualDirectory, mapping.Clone()); } return col; } private static string ValidateVirtualDirectoryParameter(string virtualDirectory) { // Create a VirtualPath object to validate the path VirtualPath v = VirtualPath.CreateAbsoluteAllowNull(virtualDirectory); return VirtualPath.GetVirtualPathString(v); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Collections; using System.Collections.Specialized; using System.Configuration; using System.Web.Util; using System.Security.Permissions; // // Collection of VirtualDirectoryMappings. // Follows the standard pattern for collections derived from NameObjectCollectionBase. // [Serializable()] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class VirtualDirectoryMappingCollection : NameObjectCollectionBase { public VirtualDirectoryMappingCollection() : base(StringComparer.OrdinalIgnoreCase) { } public ICollection AllKeys { get { return BaseGetAllKeys(); } } public VirtualDirectoryMapping this[string virtualDirectory] { get { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); return Get(virtualDirectory); } } public VirtualDirectoryMapping this[int index] { get { return Get(index); } } public void Add(string virtualDirectory, VirtualDirectoryMapping mapping) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); if (mapping == null) { throw new ArgumentNullException("mapping"); } if (Get(virtualDirectory) != null) { throw ExceptionUtil.ParameterInvalid("virtualDirectory"); } mapping.SetVirtualDirectory(VirtualPath.CreateAbsoluteAllowNull(virtualDirectory)); BaseAdd(virtualDirectory, mapping); } public void Clear() { BaseClear(); } public void CopyTo(VirtualDirectoryMapping[] array, int index) { if (array == null) { throw new ArgumentNullException("array"); } int c = Count; if (array.Length < c + index) { throw new ArgumentOutOfRangeException("index"); } for (int i = 0, j = index; i < c; i++, j++) { array[j] = Get(i); } } public VirtualDirectoryMapping Get(int index) { return (VirtualDirectoryMapping) BaseGet(index); } public VirtualDirectoryMapping Get(string virtualDirectory) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); return (VirtualDirectoryMapping) BaseGet(virtualDirectory); } public string GetKey(int index) { return BaseGetKey(index); } public void Remove(string virtualDirectory) { virtualDirectory = ValidateVirtualDirectoryParameter(virtualDirectory); BaseRemove(virtualDirectory); } public void RemoveAt(int index) { BaseRemoveAt(index); } internal VirtualDirectoryMappingCollection Clone() { VirtualDirectoryMappingCollection col = new VirtualDirectoryMappingCollection(); for (int i = 0; i < this.Count; i++) { VirtualDirectoryMapping mapping = this[i]; col.Add(mapping.VirtualDirectory, mapping.Clone()); } return col; } private static string ValidateVirtualDirectoryParameter(string virtualDirectory) { // Create a VirtualPath object to validate the path VirtualPath v = VirtualPath.CreateAbsoluteAllowNull(virtualDirectory); return VirtualPath.GetVirtualPathString(v); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StringSorter.cs
- DesignTimeParseData.cs
- StringExpressionSet.cs
- XmlQuerySequence.cs
- UIElementIsland.cs
- BitmapFrame.cs
- MenuItem.cs
- AssemblyAttributes.cs
- ExpressionBindings.cs
- DockPattern.cs
- ObjectDataSourceSelectingEventArgs.cs
- HTMLTextWriter.cs
- AssemblyInfo.cs
- ProbeMatchesCD1.cs
- SuppressIldasmAttribute.cs
- HashRepartitionStream.cs
- DefaultShape.cs
- ModuleConfigurationInfo.cs
- ObjectDataSourceSelectingEventArgs.cs
- HMACSHA256.cs
- SqlUDTStorage.cs
- _DisconnectOverlappedAsyncResult.cs
- RolePrincipal.cs
- ActivityInstanceReference.cs
- CodeMethodInvokeExpression.cs
- HttpRuntimeSection.cs
- Convert.cs
- MLangCodePageEncoding.cs
- BufferedGraphicsContext.cs
- ToolConsole.cs
- WorkflowDesigner.cs
- InvalidProgramException.cs
- ResolveCriteriaCD1.cs
- ToolStripRenderEventArgs.cs
- EnvironmentPermission.cs
- AuthenticationException.cs
- XmlSchemaComplexContent.cs
- XpsFilter.cs
- ProfileParameter.cs
- XmlUnspecifiedAttribute.cs
- regiisutil.cs
- DesignTimeVisibleAttribute.cs
- WmlObjectListAdapter.cs
- AutoGeneratedField.cs
- Size3DConverter.cs
- NetTcpSecurityElement.cs
- UrlPath.cs
- SafeRightsManagementQueryHandle.cs
- loginstatus.cs
- Site.cs
- PartialCachingAttribute.cs
- PolygonHotSpot.cs
- FontNameEditor.cs
- BuildResultCache.cs
- XmlMessageFormatter.cs
- ListBindableAttribute.cs
- XmlParser.cs
- XsdBuilder.cs
- HttpSocketManager.cs
- GenerateScriptTypeAttribute.cs
- Renderer.cs
- AspNetSynchronizationContext.cs
- MapPathBasedVirtualPathProvider.cs
- ConstructorBuilder.cs
- ParserExtension.cs
- ContextStaticAttribute.cs
- SqlUserDefinedTypeAttribute.cs
- SerialReceived.cs
- DataGridViewToolTip.cs
- DataServiceRequestOfT.cs
- HatchBrush.cs
- AttachedPropertyMethodSelector.cs
- NumberSubstitution.cs
- CallbackHandler.cs
- HostExecutionContextManager.cs
- GetFileNameResult.cs
- XmlQuerySequence.cs
- HwndSourceKeyboardInputSite.cs
- DtrList.cs
- DbResourceAllocator.cs
- DialogWindow.cs
- CustomCategoryAttribute.cs
- PrivilegedConfigurationManager.cs
- RepeatButtonAutomationPeer.cs
- GridProviderWrapper.cs
- StylusButtonCollection.cs
- MetadataPropertyvalue.cs
- PathSegmentCollection.cs
- LayeredChannelFactory.cs
- ProgressPage.cs
- GridViewSelectEventArgs.cs
- ManagedCodeMarkers.cs
- DocumentationServerProtocol.cs
- SocketConnection.cs
- EntityViewGenerationAttribute.cs
- MailSettingsSection.cs
- HttpWebRequestElement.cs
- PropertyInfo.cs
- BitmapCacheBrush.cs
- XmlSchemaSequence.cs