Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Principal / GenericPrincipal.cs / 1 / GenericPrincipal.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
//
// GenericPrincipal.cs
//
namespace System.Security.Principal
{
using System.Runtime.Remoting;
using System;
using System.Security.Util;
using System.Globalization;
[Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GenericPrincipal : IPrincipal {
private IIdentity m_identity;
private string[] m_roles;
public GenericPrincipal (IIdentity identity, string[] roles) {
if (identity == null)
throw new ArgumentNullException("identity");
m_identity = identity;
if (roles != null) {
m_roles = new string[roles.Length];
for (int i = 0; i < roles.Length; ++i) {
m_roles[i] = roles[i];
}
}
else {
m_roles = null;
}
}
public virtual IIdentity Identity {
get {
return m_identity;
}
}
public virtual bool IsInRole (string role) {
if (role == null || m_roles == null)
return false;
for (int i = 0; i < m_roles.Length; ++i) {
if (m_roles[i] != null && String.Compare(m_roles[i], role, StringComparison.OrdinalIgnoreCase) == 0)
return true;
}
return false;
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TypeLibConverter.cs
- XmlSchemaSimpleType.cs
- TaskCanceledException.cs
- ManipulationDevice.cs
- SQlBooleanStorage.cs
- InternalConfigSettingsFactory.cs
- DataControlButton.cs
- HandlerBase.cs
- XmlSchemaChoice.cs
- NavigationProperty.cs
- Pen.cs
- RadialGradientBrush.cs
- QilPatternVisitor.cs
- SafeNativeMethodsCLR.cs
- FrameworkPropertyMetadata.cs
- Viewport2DVisual3D.cs
- BinaryExpressionHelper.cs
- ResourceProperty.cs
- RoutingEndpointTrait.cs
- ReliableDuplexSessionChannel.cs
- ECDiffieHellmanPublicKey.cs
- Part.cs
- ConfigurationStrings.cs
- TypeListConverter.cs
- Item.cs
- ActivityAction.cs
- CodeComment.cs
- FontEditor.cs
- WindowInteropHelper.cs
- LocatorBase.cs
- DataGrid.cs
- UnmanagedMemoryStreamWrapper.cs
- BrowserDefinition.cs
- DesignerActionMethodItem.cs
- ToolStripProgressBar.cs
- DocumentDesigner.cs
- SmiContext.cs
- SmiContext.cs
- DateTimeFormat.cs
- Win32MouseDevice.cs
- HashAlgorithm.cs
- TrackingServices.cs
- Int16.cs
- WorkflowQueueInfo.cs
- SemanticBasicElement.cs
- ComAdminInterfaces.cs
- QueryRewriter.cs
- DriveInfo.cs
- ComponentResourceKeyConverter.cs
- HtmlControlPersistable.cs
- HttpModuleCollection.cs
- TTSEvent.cs
- StdValidatorsAndConverters.cs
- Underline.cs
- SetStoryboardSpeedRatio.cs
- SmiEventSink.cs
- AsyncCompletedEventArgs.cs
- Control.cs
- ConstructorExpr.cs
- SafeSecurityHandles.cs
- NativeMethods.cs
- TextEditorCharacters.cs
- BufferedResponseStream.cs
- SecurityException.cs
- TextTreeUndo.cs
- BitSet.cs
- DataTableTypeConverter.cs
- OwnerDrawPropertyBag.cs
- NullableLongSumAggregationOperator.cs
- DataRowView.cs
- ConfigurationLockCollection.cs
- CodeVariableDeclarationStatement.cs
- DATA_BLOB.cs
- WindowsRichEdit.cs
- FilteredDataSetHelper.cs
- WebHttpBinding.cs
- CodeObject.cs
- PrtCap_Public_Simple.cs
- TimeSpan.cs
- TemplateParser.cs
- ProxyHwnd.cs
- UniqueConstraint.cs
- JsonFormatWriterGenerator.cs
- EventMappingSettingsCollection.cs
- LiteralControl.cs
- ColumnReorderedEventArgs.cs
- WebBrowserHelper.cs
- Matrix.cs
- TwoPhaseCommit.cs
- AsyncPostBackErrorEventArgs.cs
- ComUdtElementCollection.cs
- DesignTimeData.cs
- AndCondition.cs
- SessionPageStatePersister.cs
- Vector.cs
- TextServicesCompartmentEventSink.cs
- SharedStatics.cs
- ReflectionUtil.cs
- FocusTracker.cs
- ResourceDescriptionAttribute.cs