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
- XmlnsDictionary.cs
- GlobalizationSection.cs
- SettingsProviderCollection.cs
- HMACRIPEMD160.cs
- UserMapPath.cs
- SkewTransform.cs
- TreeNodeBindingCollection.cs
- AlternationConverter.cs
- Blend.cs
- SocketManager.cs
- EntityDataSourceStatementEditorForm.cs
- HierarchicalDataBoundControl.cs
- NetworkStream.cs
- SymDocumentType.cs
- PerfCounterSection.cs
- SafeHandles.cs
- TableLayoutRowStyleCollection.cs
- FrameSecurityDescriptor.cs
- TagMapCollection.cs
- OSFeature.cs
- RayHitTestParameters.cs
- Point.cs
- SymLanguageType.cs
- SmtpNtlmAuthenticationModule.cs
- GridViewSortEventArgs.cs
- TypeDependencyAttribute.cs
- DataGridViewRowPostPaintEventArgs.cs
- SecurityAlgorithmSuite.cs
- Border.cs
- ItemChangedEventArgs.cs
- recordstate.cs
- SimpleFileLog.cs
- AnnotationHighlightLayer.cs
- Point4D.cs
- DataGridTableCollection.cs
- Vector3DAnimationUsingKeyFrames.cs
- CodeDirectoryCompiler.cs
- UInt32.cs
- TextBoxAutomationPeer.cs
- OletxDependentTransaction.cs
- AnimationClock.cs
- KoreanCalendar.cs
- EditorZone.cs
- ImageField.cs
- PersonalizablePropertyEntry.cs
- DefaultTraceListener.cs
- SpecularMaterial.cs
- SocketException.cs
- ScrollEventArgs.cs
- WindowsNonControl.cs
- XmlChoiceIdentifierAttribute.cs
- KerberosRequestorSecurityToken.cs
- DataBindingExpressionBuilder.cs
- ComponentCollection.cs
- InstanceDataCollection.cs
- BindingSource.cs
- SignedPkcs7.cs
- TrustExchangeException.cs
- GuidelineSet.cs
- RtfControls.cs
- DiagnosticTrace.cs
- CursorConverter.cs
- PageAsyncTask.cs
- EntityExpressionVisitor.cs
- RegexTree.cs
- CaseStatementSlot.cs
- BitmapEffect.cs
- RuntimeEnvironment.cs
- UriExt.cs
- TouchesOverProperty.cs
- Matrix.cs
- JsonFaultDetail.cs
- hwndwrapper.cs
- CallbackWrapper.cs
- HTMLTagNameToTypeMapper.cs
- EUCJPEncoding.cs
- SSmlParser.cs
- DockEditor.cs
- PtsHost.cs
- ZipQueryOperator.cs
- DataBindingHandlerAttribute.cs
- DNS.cs
- CharKeyFrameCollection.cs
- ProcessModelSection.cs
- PlaceHolder.cs
- DragSelectionMessageFilter.cs
- SizeChangedEventArgs.cs
- FileSystemEventArgs.cs
- TaiwanCalendar.cs
- AttachedAnnotationChangedEventArgs.cs
- HtmlTableCell.cs
- XmlName.cs
- HashCryptoHandle.cs
- MemoryRecordBuffer.cs
- KeyValueConfigurationCollection.cs
- EncodingDataItem.cs
- SubpageParaClient.cs
- GestureRecognizer.cs
- TextParagraphView.cs
- ViewStateModeByIdAttribute.cs