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
- UriTemplateQueryValue.cs
- ExtensionWindowHeader.cs
- TransactionManager.cs
- ProxyWebPartManager.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- ColorTransform.cs
- DataTableMapping.cs
- DetailsViewPagerRow.cs
- NetworkStream.cs
- TypeBrowser.xaml.cs
- Sequence.cs
- GroupByQueryOperator.cs
- WindowsNonControl.cs
- WebPartCancelEventArgs.cs
- AttributeCollection.cs
- WindowPattern.cs
- SynchronizedInputPattern.cs
- XsltInput.cs
- LineServicesCallbacks.cs
- SmtpNtlmAuthenticationModule.cs
- DiscoveryMessageSequence11.cs
- SiteMapNodeItemEventArgs.cs
- WsatConfiguration.cs
- BookmarkScopeHandle.cs
- AutomationTextAttribute.cs
- NamespaceTable.cs
- RangeValueProviderWrapper.cs
- Highlights.cs
- CleanUpVirtualizedItemEventArgs.cs
- Variant.cs
- SqlInternalConnectionSmi.cs
- EntityDataSourceWrapperCollection.cs
- VectorAnimationUsingKeyFrames.cs
- SchemaDeclBase.cs
- TextElementEnumerator.cs
- WindowsIdentity.cs
- TypeBrowserDialog.cs
- CharStorage.cs
- DSASignatureFormatter.cs
- MappingSource.cs
- FontFamilyValueSerializer.cs
- Soap.cs
- HtmlUtf8RawTextWriter.cs
- ScriptResourceHandler.cs
- BitmapCacheBrush.cs
- ControlEvent.cs
- MetadataFile.cs
- GridViewAutomationPeer.cs
- AuthorizationSection.cs
- PipeException.cs
- DataGridViewComboBoxColumn.cs
- HttpModuleCollection.cs
- TreeView.cs
- ComplexType.cs
- HttpListener.cs
- AddingNewEventArgs.cs
- PasswordValidationException.cs
- SelectionEditingBehavior.cs
- MappingMetadataHelper.cs
- WindowsToolbarAsMenu.cs
- InitializationEventAttribute.cs
- AttributeCollection.cs
- FontStretches.cs
- FileDialogCustomPlacesCollection.cs
- LabelExpression.cs
- _IPv6Address.cs
- XPathScanner.cs
- FrameSecurityDescriptor.cs
- ZoneMembershipCondition.cs
- OperatingSystem.cs
- StateDesigner.Layouts.cs
- DiscoveryDocumentLinksPattern.cs
- TaskbarItemInfo.cs
- BufferedConnection.cs
- PathHelper.cs
- BulletedListEventArgs.cs
- BooleanSwitch.cs
- SettingsSavedEventArgs.cs
- InstallHelper.cs
- PreservationFileReader.cs
- FontSource.cs
- XmlComplianceUtil.cs
- DataAdapter.cs
- Vector3DAnimation.cs
- regiisutil.cs
- ToolCreatedEventArgs.cs
- SqlDataSourceEnumerator.cs
- CatalogPartChrome.cs
- PathTooLongException.cs
- PropertyValueChangedEvent.cs
- Stream.cs
- XmlTypeMapping.cs
- WebHttpEndpoint.cs
- FileLogRecordHeader.cs
- OpCellTreeNode.cs
- ParsedAttributeCollection.cs
- SqlClientMetaDataCollectionNames.cs
- CodeGenerator.cs
- URLIdentityPermission.cs
- DbProviderFactory.cs