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
- WinEventWrap.cs
- MenuItem.cs
- WebPartZoneCollection.cs
- PolyBezierSegment.cs
- MaterialGroup.cs
- MetabaseServerConfig.cs
- MembershipSection.cs
- Trace.cs
- CodeMethodInvokeExpression.cs
- PerformanceCountersBase.cs
- BaseTemplateParser.cs
- DataGridItemAttachedStorage.cs
- RegistryPermission.cs
- COM2TypeInfoProcessor.cs
- SHA1CryptoServiceProvider.cs
- FaultDesigner.cs
- ColumnPropertiesGroup.cs
- SessionIDManager.cs
- SQLConvert.cs
- ExpanderAutomationPeer.cs
- PipelineComponent.cs
- TypeBuilderInstantiation.cs
- TextProperties.cs
- QilXmlWriter.cs
- XmlTextWriter.cs
- SystemIPGlobalProperties.cs
- LocalizableAttribute.cs
- QueryExpression.cs
- _UriSyntax.cs
- RijndaelManagedTransform.cs
- IItemProperties.cs
- DataGridViewTextBoxEditingControl.cs
- RemotingAttributes.cs
- WmpBitmapDecoder.cs
- OleDbException.cs
- HttpWriter.cs
- CodeExpressionStatement.cs
- SecurityDescriptor.cs
- StateItem.cs
- Utility.cs
- DiscreteKeyFrames.cs
- OracleCommandBuilder.cs
- Queue.cs
- ReadonlyMessageFilter.cs
- nulltextcontainer.cs
- OperationResponse.cs
- VScrollProperties.cs
- TextBlockAutomationPeer.cs
- RijndaelManaged.cs
- RegisteredArrayDeclaration.cs
- GenericArgumentsUpdater.cs
- XsltLoader.cs
- FamilyTypefaceCollection.cs
- WsdlInspector.cs
- PathSegment.cs
- BitmapVisualManager.cs
- mediapermission.cs
- DynamicFilterExpression.cs
- TraceUtility.cs
- CommandEventArgs.cs
- XamlPathDataSerializer.cs
- DataFieldConverter.cs
- _HeaderInfoTable.cs
- XmlSchemaGroup.cs
- EngineSiteSapi.cs
- XmlTextReader.cs
- SplashScreenNativeMethods.cs
- XPathAncestorQuery.cs
- FixedStringLookup.cs
- ComponentCache.cs
- DataGridViewBand.cs
- HtmlTableRowCollection.cs
- WebBaseEventKeyComparer.cs
- ValuePattern.cs
- IntegrationExceptionEventArgs.cs
- FontNameConverter.cs
- ConfigurationException.cs
- XmlEventCache.cs
- x509utils.cs
- ValidationResult.cs
- BindableTemplateBuilder.cs
- RowUpdatedEventArgs.cs
- externdll.cs
- XmlDataSourceNodeDescriptor.cs
- KeyTime.cs
- WebScriptClientGenerator.cs
- PropertyChangedEventArgs.cs
- HttpProfileGroupBase.cs
- FloaterBaseParagraph.cs
- XmlCustomFormatter.cs
- BaseCollection.cs
- SocketInformation.cs
- Int32RectValueSerializer.cs
- XmlKeywords.cs
- UrlParameterWriter.cs
- DataTableExtensions.cs
- CalendarDateChangedEventArgs.cs
- PeerApplication.cs
- FixedSOMContainer.cs
- ComboBoxAutomationPeer.cs