Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebParts / PersonalizationDictionary.cs / 1 / PersonalizationDictionary.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Web.Util;
using System.Security.Permissions;
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
// This class is unsealed so it can be extended by developers who extend the personalization infrastructure
public class PersonalizationDictionary : IDictionary {
private HybridDictionary _dictionary;
public PersonalizationDictionary() {
_dictionary = new HybridDictionary(/* caseInsensitive */ true);
}
public PersonalizationDictionary(int initialSize) {
_dictionary = new HybridDictionary(initialSize, /* caseInsensitive */ true);
}
public virtual int Count {
get {
return _dictionary.Count;
}
}
public virtual bool IsFixedSize {
get {
return false;
}
}
public virtual bool IsReadOnly {
get {
return false;
}
}
public virtual bool IsSynchronized {
get {
return false;
}
}
public virtual ICollection Keys {
get {
return _dictionary.Keys;
}
}
public virtual object SyncRoot {
get {
return this;
}
}
public virtual ICollection Values {
get {
return _dictionary.Values;
}
}
public virtual PersonalizationEntry this[string key] {
get{
key = StringUtil.CheckAndTrimString(key, "key");
return (PersonalizationEntry)_dictionary[key];
}
set {
key = StringUtil.CheckAndTrimString(key, "key");
if (value == null) {
throw new ArgumentNullException("value");
}
_dictionary[key] = value;
}
}
public virtual void Add(string key, PersonalizationEntry value) {
key = StringUtil.CheckAndTrimString(key, "key");
if (value == null) {
throw new ArgumentNullException("value");
}
_dictionary.Add(key, value);
}
public virtual void Clear() {
_dictionary.Clear();
}
public virtual bool Contains(string key) {
key = StringUtil.CheckAndTrimString(key, "key");
return _dictionary.Contains(key);
}
public virtual void CopyTo(DictionaryEntry[] array, int index) {
_dictionary.CopyTo(array, index);
}
public virtual IDictionaryEnumerator GetEnumerator() {
return _dictionary.GetEnumerator();
}
public virtual void Remove(string key) {
key = StringUtil.CheckAndTrimString(key, "key");
_dictionary.Remove(key);
}
internal void RemoveSharedProperties() {
DictionaryEntry[] entries = new DictionaryEntry[Count];
CopyTo(entries, 0);
foreach (DictionaryEntry entry in entries) {
if (((PersonalizationEntry)entry.Value).Scope == PersonalizationScope.Shared) {
Remove((string)entry.Key);
}
}
}
#region Implementation of IDictionary
object IDictionary.this[object key] {
get {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
return this[(string)key];
}
set {
if (value == null) {
throw new ArgumentNullException("value");
}
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
if (!(value is PersonalizationEntry)) {
throw new ArgumentException(SR.GetString(
SR.PersonalizationDictionary_MustBeTypePersonalizationEntry), "value");
}
this[(string)key] = (PersonalizationEntry)value;
}
}
void IDictionary.Add(object key, object value) {
if (value == null) {
throw new ArgumentNullException("value");
}
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
if (!(value is PersonalizationEntry)) {
throw new ArgumentException(SR.GetString(
SR.PersonalizationDictionary_MustBeTypePersonalizationEntry), "value");
}
Add((string)key, (PersonalizationEntry)value);
}
bool IDictionary.Contains(object key) {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
return Contains((string)key);
}
void IDictionary.Remove(object key) {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
Remove((string)key);
}
#endregion
#region Implementation of ICollection
void ICollection.CopyTo(Array array, int index) {
if (!(array is DictionaryEntry[])) {
throw new ArgumentException(
SR.GetString(SR.PersonalizationDictionary_MustBeTypeDictionaryEntryArray), "array");
}
CopyTo((DictionaryEntry[])array, index);
}
#endregion
#region Implementation of IEnumerable
IEnumerator IEnumerable.GetEnumerator() {
return GetEnumerator();
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Web.Util;
using System.Security.Permissions;
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
// This class is unsealed so it can be extended by developers who extend the personalization infrastructure
public class PersonalizationDictionary : IDictionary {
private HybridDictionary _dictionary;
public PersonalizationDictionary() {
_dictionary = new HybridDictionary(/* caseInsensitive */ true);
}
public PersonalizationDictionary(int initialSize) {
_dictionary = new HybridDictionary(initialSize, /* caseInsensitive */ true);
}
public virtual int Count {
get {
return _dictionary.Count;
}
}
public virtual bool IsFixedSize {
get {
return false;
}
}
public virtual bool IsReadOnly {
get {
return false;
}
}
public virtual bool IsSynchronized {
get {
return false;
}
}
public virtual ICollection Keys {
get {
return _dictionary.Keys;
}
}
public virtual object SyncRoot {
get {
return this;
}
}
public virtual ICollection Values {
get {
return _dictionary.Values;
}
}
public virtual PersonalizationEntry this[string key] {
get{
key = StringUtil.CheckAndTrimString(key, "key");
return (PersonalizationEntry)_dictionary[key];
}
set {
key = StringUtil.CheckAndTrimString(key, "key");
if (value == null) {
throw new ArgumentNullException("value");
}
_dictionary[key] = value;
}
}
public virtual void Add(string key, PersonalizationEntry value) {
key = StringUtil.CheckAndTrimString(key, "key");
if (value == null) {
throw new ArgumentNullException("value");
}
_dictionary.Add(key, value);
}
public virtual void Clear() {
_dictionary.Clear();
}
public virtual bool Contains(string key) {
key = StringUtil.CheckAndTrimString(key, "key");
return _dictionary.Contains(key);
}
public virtual void CopyTo(DictionaryEntry[] array, int index) {
_dictionary.CopyTo(array, index);
}
public virtual IDictionaryEnumerator GetEnumerator() {
return _dictionary.GetEnumerator();
}
public virtual void Remove(string key) {
key = StringUtil.CheckAndTrimString(key, "key");
_dictionary.Remove(key);
}
internal void RemoveSharedProperties() {
DictionaryEntry[] entries = new DictionaryEntry[Count];
CopyTo(entries, 0);
foreach (DictionaryEntry entry in entries) {
if (((PersonalizationEntry)entry.Value).Scope == PersonalizationScope.Shared) {
Remove((string)entry.Key);
}
}
}
#region Implementation of IDictionary
object IDictionary.this[object key] {
get {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
return this[(string)key];
}
set {
if (value == null) {
throw new ArgumentNullException("value");
}
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
if (!(value is PersonalizationEntry)) {
throw new ArgumentException(SR.GetString(
SR.PersonalizationDictionary_MustBeTypePersonalizationEntry), "value");
}
this[(string)key] = (PersonalizationEntry)value;
}
}
void IDictionary.Add(object key, object value) {
if (value == null) {
throw new ArgumentNullException("value");
}
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
if (!(value is PersonalizationEntry)) {
throw new ArgumentException(SR.GetString(
SR.PersonalizationDictionary_MustBeTypePersonalizationEntry), "value");
}
Add((string)key, (PersonalizationEntry)value);
}
bool IDictionary.Contains(object key) {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
return Contains((string)key);
}
void IDictionary.Remove(object key) {
if (!(key is string)) {
throw new ArgumentException(SR.GetString(SR.PersonalizationDictionary_MustBeTypeString), "key");
}
Remove((string)key);
}
#endregion
#region Implementation of ICollection
void ICollection.CopyTo(Array array, int index) {
if (!(array is DictionaryEntry[])) {
throw new ArgumentException(
SR.GetString(SR.PersonalizationDictionary_MustBeTypeDictionaryEntryArray), "array");
}
CopyTo((DictionaryEntry[])array, index);
}
#endregion
#region Implementation of IEnumerable
IEnumerator IEnumerable.GetEnumerator() {
return GetEnumerator();
}
#endregion
}
}
// 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
- assemblycache.cs
- DesignerContextDescriptor.cs
- CodePropertyReferenceExpression.cs
- GeometryHitTestParameters.cs
- SEHException.cs
- DBConnectionString.cs
- XPathNodeList.cs
- TdsParserHelperClasses.cs
- TemplateBindingExtension.cs
- StringKeyFrameCollection.cs
- newinstructionaction.cs
- OutputCacheSettingsSection.cs
- InvokeMemberBinder.cs
- WebDescriptionAttribute.cs
- HttpContextServiceHost.cs
- SamlAuthenticationStatement.cs
- ReadOnlyDictionary.cs
- RegistrationServices.cs
- Pointer.cs
- GroupBox.cs
- RelationalExpressions.cs
- WebPartDescriptionCollection.cs
- EntityUtil.cs
- MessagingDescriptionAttribute.cs
- InputManager.cs
- ScriptControlManager.cs
- FontCacheLogic.cs
- Item.cs
- PackageDigitalSignature.cs
- JoinCqlBlock.cs
- RecommendedAsConfigurableAttribute.cs
- TreeViewAutomationPeer.cs
- ExpressionConverter.cs
- SelectionUIService.cs
- PartitionerQueryOperator.cs
- XPathNode.cs
- Point3DAnimationBase.cs
- VersionConverter.cs
- StorageFunctionMapping.cs
- TimersDescriptionAttribute.cs
- DragEventArgs.cs
- Size3DConverter.cs
- QilBinary.cs
- DbCommandDefinition.cs
- UserValidatedEventArgs.cs
- TextBoxLine.cs
- RadioButton.cs
- CalculatedColumn.cs
- EntitySetBase.cs
- MappingMetadataHelper.cs
- SoapTypeAttribute.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- HttpCacheParams.cs
- CancellationTokenRegistration.cs
- RolePrincipal.cs
- HelloMessageCD1.cs
- IIS7UserPrincipal.cs
- SQLDateTimeStorage.cs
- CodeConditionStatement.cs
- MouseActionConverter.cs
- DataGridViewRowHeaderCell.cs
- ListDictionaryInternal.cs
- DataGridViewBindingCompleteEventArgs.cs
- ClientSession.cs
- BaseComponentEditor.cs
- ConsoleTraceListener.cs
- EntityTypeEmitter.cs
- StylusButtonCollection.cs
- ReflectEventDescriptor.cs
- Transform.cs
- StringAnimationBase.cs
- Utils.cs
- NamespaceInfo.cs
- FileLoadException.cs
- JumpTask.cs
- UnsafeNetInfoNativeMethods.cs
- Dynamic.cs
- CustomSignedXml.cs
- XmlMemberMapping.cs
- Size.cs
- X509RecipientCertificateServiceElement.cs
- XmlNamespaceMapping.cs
- AdCreatedEventArgs.cs
- SmiEventSink_Default.cs
- SqlUtil.cs
- FormatterServices.cs
- ChangeNode.cs
- Internal.cs
- FastPropertyAccessor.cs
- WebServiceReceive.cs
- CompilationUnit.cs
- XNodeNavigator.cs
- CacheRequest.cs
- InternalControlCollection.cs
- Popup.cs
- SafeMILHandle.cs
- LinkAreaEditor.cs
- ListViewUpdatedEventArgs.cs
- TextServicesDisplayAttributePropertyRanges.cs
- LayoutSettings.cs