Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebParts / PersonalizationStateQuery.cs / 1 / PersonalizationStateQuery.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections.Generic; using System.Collections.Specialized; using System.Security.Permissions; using System.Web.Util; [Serializable] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class PersonalizationStateQuery { private static readonly Dictionary_knownPropertyTypeMappings; private HybridDictionary _data; static PersonalizationStateQuery() { _knownPropertyTypeMappings = new Dictionary (StringComparer.OrdinalIgnoreCase); _knownPropertyTypeMappings["PathToMatch"] = typeof(string); _knownPropertyTypeMappings["UserInactiveSinceDate"] = typeof(DateTime); _knownPropertyTypeMappings["UsernameToMatch"] = typeof(string); } public PersonalizationStateQuery() { _data = new HybridDictionary(true); // VSWhidbey 357097: UserInactiveSinceDate needs to have a default value returned for the indexer property _data["UserInactiveSinceDate"] = PersonalizationAdministration.DefaultInactiveSinceDate; } public string PathToMatch { get { return (string) this["PathToMatch"]; } set { if (value != null) { value = value.Trim(); } _data["PathToMatch"] = value; } } public DateTime UserInactiveSinceDate { get { object o = this["UserInactiveSinceDate"]; Debug.Assert(o != null, "Should always have a default value!"); return (DateTime) o; } set { _data["UserInactiveSinceDate"] = value; } } public string UsernameToMatch { get { return (string) this["UsernameToMatch"]; } set { if (value != null) { value = value.Trim(); } _data["UsernameToMatch"] = value; } } public object this[string queryKey] { get { queryKey = StringUtil.CheckAndTrimString(queryKey, "queryKey"); return _data[queryKey]; } set { queryKey = StringUtil.CheckAndTrimString(queryKey, "queryKey"); // VSWhidbey 436311: We need to check the value types for known properties if (_knownPropertyTypeMappings.ContainsKey(queryKey)) { Type valueType = _knownPropertyTypeMappings[queryKey]; Debug.Assert(valueType != null); if ((value == null && valueType.IsValueType) || (value != null && !valueType.IsAssignableFrom(value.GetType()))) { throw new ArgumentException( SR.GetString(SR.PersonalizationStateQuery_IncorrectValueType, queryKey, valueType.FullName)); } } _data[queryKey] = value; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ScriptResourceInfo.cs
- TreeViewCancelEvent.cs
- ProvidePropertyAttribute.cs
- ComboBoxItem.cs
- QueryOpeningEnumerator.cs
- StructuredProperty.cs
- CompiledELinqQueryState.cs
- XmlObjectSerializer.cs
- SpeakCompletedEventArgs.cs
- TemplateBindingExtension.cs
- HitTestParameters3D.cs
- SharedStatics.cs
- WebBrowserEvent.cs
- TreeChangeInfo.cs
- X509ChainElement.cs
- DbParameterHelper.cs
- Rotation3D.cs
- EpmHelper.cs
- TableCellCollection.cs
- ModuleBuilderData.cs
- Mapping.cs
- DataSourceGeneratorException.cs
- ProviderConnectionPoint.cs
- NavigationExpr.cs
- ListViewItem.cs
- BookmarkResumptionRecord.cs
- FloatUtil.cs
- FullTextLine.cs
- LinkLabelLinkClickedEvent.cs
- ImpersonateTokenRef.cs
- ArrayList.cs
- AssertValidation.cs
- WebPartManager.cs
- TreeNodeEventArgs.cs
- GridViewSelectEventArgs.cs
- InstanceHandle.cs
- WebBrowserNavigatingEventHandler.cs
- DynamicUpdateCommand.cs
- JsonReaderDelegator.cs
- Identifier.cs
- PassportAuthenticationEventArgs.cs
- ControlValuePropertyAttribute.cs
- TransformerTypeCollection.cs
- SchemaImporterExtensionElement.cs
- Propagator.cs
- MaskedTextBox.cs
- SqlColumnizer.cs
- ImageCodecInfoPrivate.cs
- DataError.cs
- URLIdentityPermission.cs
- State.cs
- TimerElapsedEvenArgs.cs
- ExternalFile.cs
- ConfigXmlElement.cs
- ProcessModuleCollection.cs
- MailSettingsSection.cs
- ObjectIDGenerator.cs
- DataGridHeaderBorder.cs
- RectangleHotSpot.cs
- LayoutEditorPart.cs
- RectangleGeometry.cs
- PolicyUnit.cs
- CompilerResults.cs
- CounterCreationDataConverter.cs
- TransformerInfoCollection.cs
- DbFunctionCommandTree.cs
- UnsettableComboBox.cs
- CompilerTypeWithParams.cs
- EnumDataContract.cs
- GC.cs
- FieldInfo.cs
- CollectionViewGroup.cs
- TextElement.cs
- FixedSOMPageConstructor.cs
- WindowsRichEdit.cs
- PrintPageEvent.cs
- CompiledXpathExpr.cs
- EllipticalNodeOperations.cs
- ProxyWebPartConnectionCollection.cs
- PagedDataSource.cs
- SplayTreeNode.cs
- WindowAutomationPeer.cs
- SafeThemeHandle.cs
- DoWhile.cs
- SymbolTable.cs
- BitmapMetadataBlob.cs
- IntSecurity.cs
- Floater.cs
- Int16Animation.cs
- ServiceHostFactory.cs
- EdmItemCollection.cs
- MouseGestureValueSerializer.cs
- ScrollItemPattern.cs
- ElasticEase.cs
- QilPatternFactory.cs
- ClientUtils.cs
- HttpCapabilitiesBase.cs
- TextSelectionProcessor.cs
- FormViewDeleteEventArgs.cs
- QuaternionRotation3D.cs