Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Routing / RouteValueDictionary.cs / 1305376 / RouteValueDictionary.cs
namespace System.Web.Routing {
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Runtime.CompilerServices;
[TypeForwardedFrom("System.Web.Routing, Version=3.5.0.0, Culture=Neutral, PublicKeyToken=31bf3856ad364e35")]
public class RouteValueDictionary : IDictionary {
private Dictionary _dictionary;
public RouteValueDictionary() {
_dictionary = new Dictionary(StringComparer.OrdinalIgnoreCase);
}
public RouteValueDictionary(object values) {
_dictionary = new Dictionary(StringComparer.OrdinalIgnoreCase);
AddValues(values);
}
public RouteValueDictionary(IDictionary dictionary) {
_dictionary = new Dictionary(dictionary, StringComparer.OrdinalIgnoreCase);
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public int Count {
get {
return _dictionary.Count;
}
}
public Dictionary.KeyCollection Keys {
get {
return _dictionary.Keys;
}
}
public Dictionary.ValueCollection Values {
get {
return _dictionary.Values;
}
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public object this[string key] {
get {
object value;
TryGetValue(key, out value);
return value;
}
set {
_dictionary[key] = value;
}
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public void Add(string key, object value) {
_dictionary.Add(key, value);
}
private void AddValues(object values) {
if (values != null) {
PropertyDescriptorCollection props = TypeDescriptor.GetProperties(values);
foreach (PropertyDescriptor prop in props) {
object val = prop.GetValue(values);
Add(prop.Name, val);
}
}
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public void Clear() {
_dictionary.Clear();
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public bool ContainsKey(string key) {
return _dictionary.ContainsKey(key);
}
public bool ContainsValue(object value) {
return _dictionary.ContainsValue(value);
}
public Dictionary.Enumerator GetEnumerator() {
return _dictionary.GetEnumerator();
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public bool Remove(string key) {
return _dictionary.Remove(key);
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
public bool TryGetValue(string key, out object value) {
return _dictionary.TryGetValue(key, out value);
}
#region IDictionary Members
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
ICollection IDictionary.Keys {
get {
return _dictionary.Keys;
}
}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
ICollection
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RequestCache.cs
- PermissionListSet.cs
- ConnectionManagementSection.cs
- RadioButton.cs
- StickyNote.cs
- DBParameter.cs
- Merger.cs
- FileDialog.cs
- HtmlInputHidden.cs
- RtfControlWordInfo.cs
- ImageField.cs
- GradientStopCollection.cs
- InternalPolicyElement.cs
- MasterPageBuildProvider.cs
- OleCmdHelper.cs
- MatrixValueSerializer.cs
- DocumentGridPage.cs
- EventLogPermissionAttribute.cs
- NativeMethodsOther.cs
- DocumentPageView.cs
- XsdBuilder.cs
- IdentifierCollection.cs
- Logging.cs
- FastEncoder.cs
- PropertyChangedEventManager.cs
- StrokeIntersection.cs
- Pens.cs
- ComplexBindingPropertiesAttribute.cs
- AssemblyBuilderData.cs
- SetterBase.cs
- path.cs
- RefreshEventArgs.cs
- securitycriticaldata.cs
- AssemblyLoader.cs
- PieceNameHelper.cs
- LoginAutoFormat.cs
- TraceHandler.cs
- DataGridViewRowCancelEventArgs.cs
- WizardStepBase.cs
- SqlNotificationRequest.cs
- HttpPostedFile.cs
- LoadWorkflowByInstanceKeyCommand.cs
- BaseUriHelper.cs
- GetPageNumberCompletedEventArgs.cs
- CodeBlockBuilder.cs
- DataReceivedEventArgs.cs
- OdbcError.cs
- SizeLimitedCache.cs
- FormattedText.cs
- ProcessModuleCollection.cs
- EventWaitHandle.cs
- RSAPKCS1KeyExchangeFormatter.cs
- X509Logo.cs
- xamlnodes.cs
- HttpServerUtilityWrapper.cs
- ColumnCollection.cs
- RestHandler.cs
- RequestValidator.cs
- TypeBuilder.cs
- PerformanceCounters.cs
- ConfigurationCollectionAttribute.cs
- ResourceReferenceKeyNotFoundException.cs
- MailAddressCollection.cs
- Help.cs
- ComponentResourceKey.cs
- ArgumentNullException.cs
- ProcessInputEventArgs.cs
- ConstraintConverter.cs
- XmlILOptimizerVisitor.cs
- ColorConverter.cs
- GradientStop.cs
- ActiveXMessageFormatter.cs
- localization.cs
- ListViewGroupCollectionEditor.cs
- safesecurityhelperavalon.cs
- ResourceDictionaryCollection.cs
- UdpDiscoveryEndpointElement.cs
- ReflectPropertyDescriptor.cs
- ApplicationInterop.cs
- Html32TextWriter.cs
- SecurityElement.cs
- SecurityCookieModeValidator.cs
- SessionState.cs
- JoinQueryOperator.cs
- TimeStampChecker.cs
- WebConfigurationHostFileChange.cs
- IRCollection.cs
- UnconditionalPolicy.cs
- GeneralTransform3DTo2D.cs
- GrammarBuilderBase.cs
- CompositeTypefaceMetrics.cs
- ToolboxItemAttribute.cs
- PositiveTimeSpanValidatorAttribute.cs
- ToolStripItemEventArgs.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- EventLogException.cs
- TemplatedControlDesigner.cs
- Hex.cs
- CacheChildrenQuery.cs
- XPathEmptyIterator.cs