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
- ScriptingWebServicesSectionGroup.cs
- LocatorGroup.cs
- AdapterDictionary.cs
- EnvironmentPermission.cs
- ActivityUtilities.cs
- TrackBarRenderer.cs
- SecUtil.cs
- SmtpAuthenticationManager.cs
- MemberJoinTreeNode.cs
- SchemaContext.cs
- TableStyle.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- DbDataReader.cs
- unsafenativemethodsother.cs
- ItemsPanelTemplate.cs
- IdentityNotMappedException.cs
- LabelAutomationPeer.cs
- SignalGate.cs
- TextBoxAutomationPeer.cs
- FragmentQueryKB.cs
- TagMapInfo.cs
- RowBinding.cs
- MethodSet.cs
- ReflectTypeDescriptionProvider.cs
- HttpModuleAction.cs
- BmpBitmapDecoder.cs
- RegexMatch.cs
- VectorConverter.cs
- CompositionTarget.cs
- DrawingCollection.cs
- CellConstantDomain.cs
- RegexCompiler.cs
- TransformGroup.cs
- FileReservationCollection.cs
- ConstNode.cs
- OleDbDataReader.cs
- ChangeNode.cs
- CLRBindingWorker.cs
- ConfigurationValidatorAttribute.cs
- WebScriptServiceHost.cs
- CrossSiteScriptingValidation.cs
- MatrixAnimationUsingPath.cs
- ScrollContentPresenter.cs
- IERequestCache.cs
- ZoomPercentageConverter.cs
- JavaScriptObjectDeserializer.cs
- ColumnClickEvent.cs
- AuthenticationException.cs
- ProfilePropertySettingsCollection.cs
- ReachDocumentSequenceSerializerAsync.cs
- BitmapImage.cs
- DataBoundLiteralControl.cs
- Missing.cs
- XmlCodeExporter.cs
- X509Utils.cs
- XmlElementCollection.cs
- ProgramNode.cs
- ContainerSelectorActiveEvent.cs
- SqlXmlStorage.cs
- EventLogInternal.cs
- GlobalizationAssembly.cs
- EntityDataSourceEntityTypeFilterItem.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- TrustManagerPromptUI.cs
- SSmlParser.cs
- DataColumn.cs
- LogEntrySerialization.cs
- SoapAttributeOverrides.cs
- RegexCompiler.cs
- DataSourceXmlSubItemAttribute.cs
- DockPanel.cs
- CodeGeneratorOptions.cs
- DbMetaDataFactory.cs
- Error.cs
- JavaScriptString.cs
- Converter.cs
- MachineKeySection.cs
- HtmlElementErrorEventArgs.cs
- CodeVariableDeclarationStatement.cs
- _NetworkingPerfCounters.cs
- XmlSchemaInferenceException.cs
- WebOperationContext.cs
- ReplacementText.cs
- OdbcConnectionFactory.cs
- TreeView.cs
- IOThreadScheduler.cs
- SpellerHighlightLayer.cs
- XamlTypeMapperSchemaContext.cs
- ToolStripPanelRow.cs
- SchemaNamespaceManager.cs
- CellParagraph.cs
- DataGridViewComboBoxCell.cs
- DataTableClearEvent.cs
- NotifyInputEventArgs.cs
- MinMaxParagraphWidth.cs
- DataServiceKeyAttribute.cs
- LineServices.cs
- InvalidPrinterException.cs
- OracleInternalConnection.cs
- ValueChangedEventManager.cs