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
- DesignSurfaceEvent.cs
- DrawItemEvent.cs
- log.cs
- ErrorFormatter.cs
- ActiveDocumentEvent.cs
- TemplateInstanceAttribute.cs
- CalloutQueueItem.cs
- AnimatedTypeHelpers.cs
- CompilerLocalReference.cs
- BinaryReader.cs
- TemplateBuilder.cs
- XmlSchemaCompilationSettings.cs
- EncryptedPackageFilter.cs
- CompilationRelaxations.cs
- FileVersion.cs
- ECDiffieHellmanCngPublicKey.cs
- Baml2006ReaderSettings.cs
- TextSpanModifier.cs
- ResXDataNode.cs
- SrgsOneOf.cs
- DbDataReader.cs
- DynamicMethod.cs
- SqlUtils.cs
- URIFormatException.cs
- WrappedIUnknown.cs
- ReachPageContentCollectionSerializer.cs
- FilterRepeater.cs
- HtmlShim.cs
- FillRuleValidation.cs
- RecordManager.cs
- EditorPart.cs
- Stackframe.cs
- PerSessionInstanceContextProvider.cs
- Path.cs
- _DynamicWinsockMethods.cs
- KeyNotFoundException.cs
- cookie.cs
- RuntimeHelpers.cs
- _ProxyRegBlob.cs
- TemplateNameScope.cs
- XmlArrayItemAttribute.cs
- BitmapDecoder.cs
- ConnectionPoint.cs
- RegularExpressionValidator.cs
- SelectorItemAutomationPeer.cs
- Keywords.cs
- BoundColumn.cs
- ConnectionManager.cs
- ServiceHttpModule.cs
- UidManager.cs
- HttpSysSettings.cs
- MergeLocalizationDirectives.cs
- AttributedMetaModel.cs
- XmlSubtreeReader.cs
- ObjectHandle.cs
- ServiceDescription.cs
- SerialPort.cs
- DependencySource.cs
- LicenseProviderAttribute.cs
- CompilerInfo.cs
- DictionaryContent.cs
- DataTableTypeConverter.cs
- ExtensionSimplifierMarkupObject.cs
- InvokeMemberBinder.cs
- Delegate.cs
- ConnectionStringsExpressionBuilder.cs
- CompositeControlDesigner.cs
- GenerateHelper.cs
- PrintPreviewDialog.cs
- Parameter.cs
- GeometryCollection.cs
- IgnoreSection.cs
- SpellerInterop.cs
- DependencyObjectType.cs
- DataGridCellItemAutomationPeer.cs
- DomainUpDown.cs
- SerializationSectionGroup.cs
- StatusBarDrawItemEvent.cs
- DebugHandleTracker.cs
- VScrollBar.cs
- RenderingEventArgs.cs
- ExpressionDumper.cs
- MarkupExtensionParser.cs
- SafeCertificateStore.cs
- TreeNodeEventArgs.cs
- TextViewElement.cs
- ControlBindingsConverter.cs
- SqlConnectionPoolGroupProviderInfo.cs
- InternalDispatchObject.cs
- KeyProperty.cs
- OleDbMetaDataFactory.cs
- StateChangeEvent.cs
- ImageSource.cs
- RegistryPermission.cs
- StructureChangedEventArgs.cs
- CodeDomLoader.cs
- WinFormsSecurity.cs
- DeferredTextReference.cs
- NativeMethods.cs
- FixedSOMPage.cs