Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Role / WebWorkflowRole.cs / 1305376 / WebWorkflowRole.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Workflow.Runtime;
using System.Workflow.Runtime.Hosting;
using System.Web.Security;
using System.Security.Principal;
using System.Configuration.Provider;
namespace System.Workflow.Activities
{
[Serializable]
public class WebWorkflowRole : WorkflowRole
{
private string m_roleName;
private string m_roleProvider;
public override string Name
{
get
{
return this.m_roleName;
}
set
{
if (value == null)
throw new ArgumentNullException("value");
this.m_roleName = value;
}
}
public string RoleProvider
{
get
{
return this.m_roleProvider;
}
set
{
this.m_roleProvider = value;
}
}
public WebWorkflowRole(string roleName)
{
if (null == roleName)
{
throw new ArgumentNullException("roleName");
}
this.m_roleName = roleName;
this.m_roleProvider = null;
}
public WebWorkflowRole(string roleName, string provider)
{
if (null == roleName)
{
throw new ArgumentNullException("roleName");
}
this.m_roleName = roleName;
this.m_roleProvider = provider;
}
public override IList GetIdentities()
{
List identities = new List();
System.Web.Security.RoleProvider rp = GetRoleProvider();
identities.AddRange(rp.GetUsersInRole(Name));
return identities;
}
public override bool IncludesIdentity(string identity)
{
System.Web.Security.RoleProvider rp = GetRoleProvider();
return rp.IsUserInRole(identity, Name);
}
private System.Web.Security.RoleProvider GetRoleProvider()
{
if (this.RoleProvider == null)
return System.Web.Security.Roles.Provider;
RoleProvider rp = Roles.Providers[this.RoleProvider];
if (rp == null)
throw new ProviderException(SR.GetString(SR.Error_RoleProviderNotAvailableOrEnabled, this.RoleProvider));
return rp;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EdmTypeAttribute.cs
- ObsoleteAttribute.cs
- DataReaderContainer.cs
- EntityViewGenerationConstants.cs
- TransportationConfigurationTypeInstallComponent.cs
- ColorTransform.cs
- ScrollItemPattern.cs
- NamespaceEmitter.cs
- DiagnosticsElement.cs
- ChildTable.cs
- PageBuildProvider.cs
- StringSorter.cs
- MergeFailedEvent.cs
- ScriptManagerProxy.cs
- WaitHandleCannotBeOpenedException.cs
- ImageSourceValueSerializer.cs
- EdgeProfileValidation.cs
- DataRecordInternal.cs
- XmlSchemaCompilationSettings.cs
- CompilerTypeWithParams.cs
- _SslSessionsCache.cs
- HwndHost.cs
- WmlPageAdapter.cs
- TypeInitializationException.cs
- ConstraintConverter.cs
- SchemaMapping.cs
- RepeatBehaviorConverter.cs
- StringExpressionSet.cs
- ProgressChangedEventArgs.cs
- XmlSchemaAttribute.cs
- RuntimeConfig.cs
- GroupBox.cs
- XhtmlConformanceSection.cs
- MdImport.cs
- ChangesetResponse.cs
- AudioFormatConverter.cs
- DataBindingExpressionBuilder.cs
- HMACSHA512.cs
- AutomationElementCollection.cs
- FrameworkReadOnlyPropertyMetadata.cs
- UTF8Encoding.cs
- SQLRoleProvider.cs
- HttpRuntime.cs
- SHA1CryptoServiceProvider.cs
- MetabaseServerConfig.cs
- XmlDsigSep2000.cs
- While.cs
- PerfCounters.cs
- Cursor.cs
- WindowsAltTab.cs
- RestHandler.cs
- StylusSystemGestureEventArgs.cs
- PoisonMessageException.cs
- XmlSchemaInferenceException.cs
- HwndSubclass.cs
- XmlSchemaSequence.cs
- ReflectEventDescriptor.cs
- TextServicesManager.cs
- SerTrace.cs
- GenericPrincipal.cs
- DynamicPropertyReader.cs
- SignatureDescription.cs
- EdmProviderManifest.cs
- ImmComposition.cs
- RtfControlWordInfo.cs
- CollectionViewSource.cs
- DetailsViewRow.cs
- ModuleBuilder.cs
- XmlSchemaAttribute.cs
- DataControlField.cs
- AdornerHitTestResult.cs
- DrawingContextWalker.cs
- AudioLevelUpdatedEventArgs.cs
- BookmarkScopeManager.cs
- EventSchemaTraceListener.cs
- ScriptServiceAttribute.cs
- SystemDropShadowChrome.cs
- TdsParserSafeHandles.cs
- StructuralType.cs
- ElementMarkupObject.cs
- ExceptionNotification.cs
- PropertyManager.cs
- KnownColorTable.cs
- SqlException.cs
- TextSpanModifier.cs
- RepeatButton.cs
- PackUriHelper.cs
- Misc.cs
- FontSource.cs
- ZoneButton.cs
- InlineUIContainer.cs
- View.cs
- ComponentEvent.cs
- VisualStyleTypesAndProperties.cs
- ImportContext.cs
- UIElementParaClient.cs
- ContactManager.cs
- DataViewManagerListItemTypeDescriptor.cs
- Point3DAnimation.cs
- DataGridViewCellStateChangedEventArgs.cs