Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RoleService.cs
- ByteAnimationBase.cs
- HttpProfileBase.cs
- CodeDirectiveCollection.cs
- BStrWrapper.cs
- _LazyAsyncResult.cs
- RenderTargetBitmap.cs
- ScaleTransform.cs
- TextSpan.cs
- SetIterators.cs
- ChangeBlockUndoRecord.cs
- NTAccount.cs
- ScaleTransform3D.cs
- XmlQueryStaticData.cs
- ProtocolImporter.cs
- OdbcDataAdapter.cs
- FormatControl.cs
- X509RawDataKeyIdentifierClause.cs
- EntityContainerRelationshipSetEnd.cs
- SupportsEventValidationAttribute.cs
- DataGridToolTip.cs
- BitStream.cs
- TextTreeTextElementNode.cs
- ContainerActivationHelper.cs
- GacUtil.cs
- BadImageFormatException.cs
- ToolBarPanel.cs
- PersonalizableTypeEntry.cs
- EntityDataSourceConfigureObjectContextPanel.cs
- FrameworkTextComposition.cs
- ScriptManager.cs
- PageOrientation.cs
- GridViewPageEventArgs.cs
- MouseCaptureWithinProperty.cs
- ConnectionPoint.cs
- ButtonBase.cs
- DispatcherProcessingDisabled.cs
- ProtectedProviderSettings.cs
- WebPartEditorApplyVerb.cs
- SQLMoney.cs
- ZoomComboBox.cs
- ResourceExpression.cs
- GlyphRunDrawing.cs
- XLinq.cs
- WindowsFormsSynchronizationContext.cs
- SoapIncludeAttribute.cs
- DecoderNLS.cs
- TypeToken.cs
- HyperLinkDataBindingHandler.cs
- HTMLTagNameToTypeMapper.cs
- TemplateBuilder.cs
- FontConverter.cs
- ICollection.cs
- FixedElement.cs
- FilteredDataSetHelper.cs
- EarlyBoundInfo.cs
- XmlEntityReference.cs
- AuthenticationService.cs
- DataBinding.cs
- ForwardPositionQuery.cs
- HotSpotCollection.cs
- ScriptResourceInfo.cs
- XmlLinkedNode.cs
- CustomErrorCollection.cs
- _LazyAsyncResult.cs
- HideDisabledControlAdapter.cs
- CodeCompiler.cs
- DrawListViewItemEventArgs.cs
- HttpCacheVary.cs
- MultipartContentParser.cs
- TextServicesHost.cs
- TraceHelpers.cs
- HashMembershipCondition.cs
- AssemblyHash.cs
- MembershipUser.cs
- SmtpReplyReader.cs
- WorkflowInstanceContextProvider.cs
- EventSetter.cs
- MemberNameValidator.cs
- TextEditorSelection.cs
- HealthMonitoringSectionHelper.cs
- XmlDataProvider.cs
- SmtpAuthenticationManager.cs
- StateChangeEvent.cs
- CroppedBitmap.cs
- XsltFunctions.cs
- PipeStream.cs
- GenericTextProperties.cs
- BrowserTree.cs
- XmlQueryCardinality.cs
- ControlCollection.cs
- QueryableDataSourceView.cs
- smtpconnection.cs
- UIElement3D.cs
- TreeNode.cs
- CopyNodeSetAction.cs
- RuntimeConfigurationRecord.cs
- Track.cs
- DataGridViewRowsAddedEventArgs.cs
- EarlyBoundInfo.cs