Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / Configuration / VirtualDirectoryMappingCollection.cs / 5 / 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.
//
//-----------------------------------------------------------------------------
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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WebProxyScriptElement.cs
- AppSettingsExpressionBuilder.cs
- ImagingCache.cs
- Hash.cs
- WebPartZoneDesigner.cs
- AttachedAnnotationChangedEventArgs.cs
- SerialStream.cs
- MetafileHeader.cs
- PageEventArgs.cs
- XPathExpr.cs
- EdmToObjectNamespaceMap.cs
- XmlNavigatorFilter.cs
- XhtmlBasicTextBoxAdapter.cs
- HtmlElementCollection.cs
- HwndStylusInputProvider.cs
- Environment.cs
- HostingPreferredMapPath.cs
- WebPartCatalogCloseVerb.cs
- AlternationConverter.cs
- ExpressionWriter.cs
- DataSysAttribute.cs
- AssemblyGen.cs
- TextUtf8RawTextWriter.cs
- DataObject.cs
- XmlImplementation.cs
- CultureInfo.cs
- WrapperEqualityComparer.cs
- FactoryRecord.cs
- Pen.cs
- BamlMapTable.cs
- AdRotator.cs
- ShutDownListener.cs
- Aggregates.cs
- GeometryCollection.cs
- AxDesigner.cs
- WriteFileContext.cs
- SQLDoubleStorage.cs
- SmiMetaData.cs
- ProfileSection.cs
- TemplatedWizardStep.cs
- OleDbError.cs
- ControlLocalizer.cs
- ToolboxItem.cs
- BoundsDrawingContextWalker.cs
- ListItemCollection.cs
- SiteMapHierarchicalDataSourceView.cs
- SafeEventLogReadHandle.cs
- ContextMenuStripGroupCollection.cs
- PolyBezierSegment.cs
- TraceListener.cs
- XmlHierarchicalDataSourceView.cs
- StreamUpdate.cs
- EntityTemplateFactory.cs
- ReferenceEqualityComparer.cs
- CollectionMarkupSerializer.cs
- DataPointer.cs
- SoapException.cs
- DetailsViewActionList.cs
- TypeListConverter.cs
- XmlSchemaGroupRef.cs
- DataTableExtensions.cs
- ReliableChannelFactory.cs
- ConnectionsZone.cs
- OutputWindow.cs
- ForEachAction.cs
- HtmlInputImage.cs
- ActivityCodeDomSerializationManager.cs
- FocusTracker.cs
- PageCodeDomTreeGenerator.cs
- Dynamic.cs
- ReflectionTypeLoadException.cs
- BrushConverter.cs
- ServiceEndpointAssociationProvider.cs
- ResXResourceSet.cs
- CanonicalXml.cs
- AdCreatedEventArgs.cs
- FormsAuthenticationUser.cs
- ECDiffieHellmanCng.cs
- WindowsListViewGroup.cs
- ObjectDataSourceSelectingEventArgs.cs
- D3DImage.cs
- InvalidOperationException.cs
- GridViewColumn.cs
- SQLByte.cs
- PolyLineSegment.cs
- BoundColumn.cs
- TogglePattern.cs
- LogRestartAreaEnumerator.cs
- XmlSchemaParticle.cs
- MaskedTextProvider.cs
- SqlFunctionAttribute.cs
- WebService.cs
- ReservationNotFoundException.cs
- XmlAutoDetectWriter.cs
- AnimatedTypeHelpers.cs
- XMLUtil.cs
- PageThemeCodeDomTreeGenerator.cs
- Animatable.cs
- ThemeableAttribute.cs
- MSAAEventDispatcher.cs