Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InfoCardRSACryptoProvider.cs
- UnicastIPAddressInformationCollection.cs
- Attribute.cs
- RuntimeArgumentHandle.cs
- ImageFormatConverter.cs
- NetworkInformationException.cs
- ClientTarget.cs
- CustomAttributeBuilder.cs
- Queue.cs
- PointValueSerializer.cs
- TemplatedControlDesigner.cs
- TextModifier.cs
- ValueOfAction.cs
- FileReader.cs
- RepeaterItem.cs
- SchemaDeclBase.cs
- SimpleHandlerFactory.cs
- SizeConverter.cs
- ExpressionLink.cs
- SchemaTableColumn.cs
- UmAlQuraCalendar.cs
- HtmlImage.cs
- XslAst.cs
- BasicAsyncResult.cs
- basenumberconverter.cs
- DecimalAnimationUsingKeyFrames.cs
- RegisteredScript.cs
- DataContractAttribute.cs
- DSASignatureFormatter.cs
- Funcletizer.cs
- FilterElement.cs
- GridViewUpdatedEventArgs.cs
- HandlerBase.cs
- ExtenderHelpers.cs
- CaseExpr.cs
- ButtonBaseAutomationPeer.cs
- XamlReader.cs
- _OverlappedAsyncResult.cs
- AstTree.cs
- QueryOutputWriter.cs
- TripleDESCryptoServiceProvider.cs
- SchemaInfo.cs
- bidPrivateBase.cs
- CommandHelpers.cs
- BufferedStream2.cs
- DefaultTextStoreTextComposition.cs
- SystemWebSectionGroup.cs
- FlowStep.cs
- DataGridViewTextBoxEditingControl.cs
- HostedTransportConfigurationManager.cs
- ObjectDataProvider.cs
- ResponseStream.cs
- XamlTypeMapper.cs
- RepeatButton.cs
- WebRequestModuleElement.cs
- EventLogEntryCollection.cs
- DescendantQuery.cs
- InertiaExpansionBehavior.cs
- ResourcePart.cs
- DesignerValidationSummaryAdapter.cs
- TransferRequestHandler.cs
- SyndicationDeserializer.cs
- ExpressionReplacer.cs
- TableAdapterManagerGenerator.cs
- AuthStoreRoleProvider.cs
- WebProxyScriptElement.cs
- NativeMethodsOther.cs
- ChangeNode.cs
- SoapElementAttribute.cs
- TreeNodeConverter.cs
- FormatConvertedBitmap.cs
- Win32.cs
- TextParagraphView.cs
- DataKey.cs
- FixedElement.cs
- EdmComplexTypeAttribute.cs
- DesignTimeSiteMapProvider.cs
- RecognizedWordUnit.cs
- CustomErrorCollection.cs
- DrawingContextWalker.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- ToolStripItem.cs
- HMACSHA384.cs
- PrimitiveCodeDomSerializer.cs
- ReadOnlyNameValueCollection.cs
- DelegatedStream.cs
- FullTextBreakpoint.cs
- InvalidPipelineStoreException.cs
- ClientRolePrincipal.cs
- VirtualStackFrame.cs
- SessionPageStatePersister.cs
- ClientProxyGenerator.cs
- DataServiceQueryProvider.cs
- BinaryFormatter.cs
- InfiniteTimeSpanConverter.cs
- PolyBezierSegment.cs
- NativeMethods.cs
- GridViewColumn.cs
- Durable.cs
- HttpServerProtocol.cs