Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / RoleGroup.cs / 1 / RoleGroup.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System.ComponentModel; using System.Security.Permissions; using System.Security.Principal; using System.Web.Security; ////// Associates a collection of roles with a template. /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class RoleGroup { private ITemplate _contentTemplate; private string[] _roles; ////// The template associated with the roles. /// [ Browsable(false), DefaultValue(null), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(LoginView)), ] public ITemplate ContentTemplate { get { return _contentTemplate; } set { _contentTemplate = value; } } ////// The roles associated with the template. /// [ TypeConverterAttribute(typeof(StringArrayConverter)), ] public string[] Roles { get { if (_roles == null) { return new string[0]; } else { // Must clone to preserve encapsulation return (string[]) _roles.Clone(); } } set { if (value == null) { _roles = value; } else { // Must clone to preserve encapsulation _roles = (string[]) value.Clone(); } } } ////// Whether the user is in any of the roles. /// public bool ContainsUser(IPrincipal user) { if (user == null) { throw new ArgumentNullException("user"); } if (_roles == null) { return false; } foreach (string role in _roles) { if (user.IsInRole(role)) { return true; } } return false; } ////// For appearance in designer collection editor. /// public override string ToString() { StringArrayConverter converter = new StringArrayConverter(); return converter.ConvertToString(Roles); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SubqueryRules.cs
- TypeConverter.cs
- DynamicValidatorEventArgs.cs
- BaseProcessor.cs
- CheckedPointers.cs
- ExpressionEvaluator.cs
- Wizard.cs
- ConnectionStringSettingsCollection.cs
- Positioning.cs
- RoutedEventValueSerializer.cs
- figurelength.cs
- JavaScriptString.cs
- RadioButtonStandardAdapter.cs
- smtpconnection.cs
- HttpWebRequestElement.cs
- EventRoute.cs
- Misc.cs
- SystemTcpConnection.cs
- ToolbarAUtomationPeer.cs
- LinearGradientBrush.cs
- SQLBinaryStorage.cs
- GridViewRowCollection.cs
- MailAddressParser.cs
- MessageSecurityProtocol.cs
- SessionStateSection.cs
- OutputCacheModule.cs
- IList.cs
- EventProvider.cs
- XmlDocumentType.cs
- FutureFactory.cs
- ZipPackage.cs
- SiteMapSection.cs
- ExeConfigurationFileMap.cs
- EmptyEnumerator.cs
- MemberCollection.cs
- DisplayNameAttribute.cs
- HtmlControlAdapter.cs
- BindMarkupExtensionSerializer.cs
- CaseInsensitiveComparer.cs
- Page.cs
- CodeChecksumPragma.cs
- BooleanStorage.cs
- SoapObjectReader.cs
- ByteAnimationBase.cs
- DataSourceView.cs
- StringHandle.cs
- SymDocumentType.cs
- CommandLibraryHelper.cs
- MouseButton.cs
- WebScriptEndpoint.cs
- SocketElement.cs
- x509store.cs
- PropertyPathConverter.cs
- InputLanguageManager.cs
- CodeStatement.cs
- Ipv6Element.cs
- CryptoApi.cs
- FixedTextView.cs
- EncoderParameters.cs
- TemplatedEditableDesignerRegion.cs
- SourceFileBuildProvider.cs
- RequestDescription.cs
- FocusManager.cs
- HtmlTitle.cs
- Binding.cs
- UIPermission.cs
- CategoryGridEntry.cs
- SafeHandle.cs
- Model3D.cs
- Track.cs
- _SecureChannel.cs
- MobileControl.cs
- IgnoreFileBuildProvider.cs
- DetailsViewDeleteEventArgs.cs
- FontUnitConverter.cs
- PriorityQueue.cs
- CompensationHandlingFilter.cs
- SqlTriggerContext.cs
- XmlSignatureProperties.cs
- Sql8ConformanceChecker.cs
- Rotation3DKeyFrameCollection.cs
- FixedElement.cs
- DbParameterCollection.cs
- CodeCatchClause.cs
- IconBitmapDecoder.cs
- ChineseLunisolarCalendar.cs
- RequestStatusBarUpdateEventArgs.cs
- XmlEncodedRawTextWriter.cs
- FormViewUpdateEventArgs.cs
- ListDictionary.cs
- EmissiveMaterial.cs
- Attributes.cs
- HtmlObjectListAdapter.cs
- RolePrincipal.cs
- WebRequestModuleElementCollection.cs
- ButtonBaseAdapter.cs
- CheckBoxStandardAdapter.cs
- HttpListener.cs
- DodSequenceMerge.cs
- SafeNativeMethods.cs