Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Security / ADMembershipUser.cs / 1305376 / ADMembershipUser.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Security { using System.Web; using System.Web.Configuration; using System.Security.Principal; using System.Security.Permissions; using System.Globalization; using System.Runtime.Serialization; using System.Diagnostics; [Serializable] public class ActiveDirectoryMembershipUser : MembershipUser { internal bool emailModified = true; internal bool commentModified = true; internal bool isApprovedModified = true; // // private variables needed for the providerUserKey // (We need to store the provider user key here rather than the base class // to be able to do custom serialization) // private byte[] sidBinaryForm = null; [NonSerialized] private SecurityIdentifier sid = null; public override DateTime LastLoginDate { get { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastLoginDate")); } set { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastLoginDate")); } } public override DateTime LastActivityDate { get { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastActivityDate")); } set { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastActivityDate")); } } public override string Email { get { return base.Email; } set { base.Email = value; emailModified = true; } } public override string Comment { get { return base.Comment; } set { base.Comment = value; commentModified = true; } } public override bool IsApproved { get { return base.IsApproved; } set { base.IsApproved = value; isApprovedModified = true; } } public override object ProviderUserKey { get { if (sid == null && sidBinaryForm != null) sid = new SecurityIdentifier(sidBinaryForm, 0); return sid; } } public ActiveDirectoryMembershipUser(string providerName, string name, object providerUserKey, string email, string passwordQuestion, string comment, bool isApproved, bool isLockedOut, DateTime creationDate, DateTime lastLoginDate, DateTime lastActivityDate, DateTime lastPasswordChangedDate, DateTime lastLockoutDate) :base(providerName, name, null, email, passwordQuestion, comment, isApproved, isLockedOut, creationDate, lastLoginDate, lastActivityDate, lastPasswordChangedDate, lastLockoutDate) { if ((providerUserKey != null) && !(providerUserKey is SecurityIdentifier)) throw new ArgumentException( SR.GetString( SR.ADMembership_InvalidProviderUserKey ), "providerUserKey" ); sid = (SecurityIdentifier) providerUserKey; if (sid != null) { // // store the sid in binary form for serialization // sidBinaryForm = new byte[sid.BinaryLength]; sid.GetBinaryForm(sidBinaryForm, 0); } } internal ActiveDirectoryMembershipUser(string providerName, string name, byte[] sidBinaryForm, object providerUserKey, string email, string passwordQuestion, string comment, bool isApproved, bool isLockedOut, DateTime creationDate, DateTime lastLoginDate, DateTime lastActivityDate, DateTime lastPasswordChangedDate, DateTime lastLockoutDate, bool valuesAreUpdated) :base(providerName, name, null, email, passwordQuestion, comment, isApproved, isLockedOut, creationDate, lastLoginDate, lastActivityDate, lastPasswordChangedDate, lastLockoutDate) { if (valuesAreUpdated) { emailModified = false; commentModified = false; isApprovedModified = false; } Debug.Assert(sidBinaryForm != null); this.sidBinaryForm = sidBinaryForm; Debug.Assert((providerUserKey != null) && (providerUserKey is SecurityIdentifier)); sid = (SecurityIdentifier) providerUserKey; } protected ActiveDirectoryMembershipUser() { } // Default CTor: Callable by derived class only. } } // 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
- QuotedPrintableStream.cs
- CheckedPointers.cs
- RulePatternOps.cs
- AuthorizationRuleCollection.cs
- TraceContext.cs
- ColumnResizeAdorner.cs
- UpdateProgress.cs
- BooleanFunctions.cs
- XmlFormatExtensionPointAttribute.cs
- ISO2022Encoding.cs
- PolyLineSegment.cs
- EntityModelBuildProvider.cs
- HtmlTernaryTree.cs
- TextBlock.cs
- TransactionContext.cs
- MenuStrip.cs
- PbrsForward.cs
- ConnectionPool.cs
- HandlerMappingMemo.cs
- SineEase.cs
- SessionEndingCancelEventArgs.cs
- AttachedAnnotationChangedEventArgs.cs
- BasicHttpBinding.cs
- SqlHelper.cs
- ExternalCalls.cs
- Update.cs
- IfJoinedCondition.cs
- CodeRemoveEventStatement.cs
- XmlQueryStaticData.cs
- Accessible.cs
- Listen.cs
- xdrvalidator.cs
- InputMethodStateTypeInfo.cs
- XmlAutoDetectWriter.cs
- ProtocolsSection.cs
- ObjectQuery_EntitySqlExtensions.cs
- BitmapEffectGroup.cs
- HttpCachePolicyElement.cs
- MarkupObject.cs
- MarkedHighlightComponent.cs
- DataTableMapping.cs
- StoreAnnotationsMap.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- ClientConfigPaths.cs
- Pair.cs
- BooleanProjectedSlot.cs
- JsonQueryStringConverter.cs
- RuntimeArgumentHandle.cs
- ComboBox.cs
- StorageAssociationTypeMapping.cs
- ConfigurationErrorsException.cs
- OptimizerPatterns.cs
- IndentTextWriter.cs
- AddInActivator.cs
- FormViewModeEventArgs.cs
- IconHelper.cs
- MetadataCacheItem.cs
- CheckBoxList.cs
- BulletedListEventArgs.cs
- SystemIPInterfaceStatistics.cs
- OAVariantLib.cs
- documentsequencetextcontainer.cs
- Binding.cs
- TypeInfo.cs
- RegexRunner.cs
- UnconditionalPolicy.cs
- XmlQueryContext.cs
- FlowLayoutSettings.cs
- SpeechSeg.cs
- GridProviderWrapper.cs
- AsyncCompletedEventArgs.cs
- TypeListConverter.cs
- FormatterConverter.cs
- ExpressionEditor.cs
- DataObjectFieldAttribute.cs
- ProfilePropertySettings.cs
- VSWCFServiceContractGenerator.cs
- OutOfMemoryException.cs
- FixedSOMTableRow.cs
- DemultiplexingClientMessageFormatter.cs
- Identifier.cs
- UInt64.cs
- DropShadowEffect.cs
- CompiledQueryCacheEntry.cs
- LoginCancelEventArgs.cs
- Matrix3DConverter.cs
- LowerCaseStringConverter.cs
- RelationshipDetailsCollection.cs
- SynchronousChannelMergeEnumerator.cs
- Native.cs
- SqlDataSourceSelectingEventArgs.cs
- AssemblyAssociatedContentFileAttribute.cs
- DependencyObjectType.cs
- TerminateDesigner.cs
- Rotation3DAnimation.cs
- HttpNamespaceReservationInstallComponent.cs
- IntSecurity.cs
- WebPartZoneBase.cs
- SkewTransform.cs
- ChangeConflicts.cs