Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / Administration / WebAdminConfigurationHelper.cs / 2 / WebAdminConfigurationHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /************************************************************************************************************/ namespace System.Web.Administration { using System; using System.Collections.Specialized; using System.Configuration; using System.Configuration.Provider; using System.Reflection; using System.Web; using System.Web.Hosting; using System.Web.Management; using System.Web.Security; using System.Web.Util; using System.Web.UI; using System.Security.Permissions; [Serializable] internal sealed class WebAdminConfigurationHelper : MarshalByRefObject, IRegisteredObject { public WebAdminConfigurationHelper() { HostingEnvironment.RegisterObject(this); } public override Object InitializeLifetimeService() { return null; // never expire lease } public VirtualDirectory GetVirtualDirectory(string path) { if (HttpRuntime.NamedPermissionSet != null) { HttpRuntime.NamedPermissionSet.PermitOnly(); } return HostingEnvironment.VirtualPathProvider.GetDirectory(path); } public object CallMembershipProviderMethod (string methodName, object[] parameters, Type[] paramTypes) { Type tempType = typeof(HttpContext).Assembly.GetType("System.Web.Security.Membership"); object returnObject = null; BindingFlags allBindingFlags = BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; MethodInfo method = null; if (paramTypes != null) { method = tempType.GetMethod(methodName, allBindingFlags, null, paramTypes, null); } else { method = tempType.GetMethod(methodName, allBindingFlags); } if (method != null) { if (HttpRuntime.NamedPermissionSet != null) { HttpRuntime.NamedPermissionSet.PermitOnly(); } returnObject = method.Invoke(null, parameters); } object[] newValues = new object[parameters.Length + 1]; newValues[0] = returnObject; int j = 1; for (int i = 0; i < (parameters.Length); i++) { newValues[j++] = parameters[i]; } returnObject = (object) newValues; return returnObject; } public object GetMembershipProviderProperty(string propertyName) { Type tempType = typeof(HttpContext).Assembly.GetType("System.Web.Security.Membership"); object returnObject = null; BindingFlags allBindingFlags = BindingFlags.GetProperty | BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; if (HttpRuntime.NamedPermissionSet != null) { HttpRuntime.NamedPermissionSet.PermitOnly(); } returnObject = tempType.InvokeMember(propertyName, allBindingFlags, null, null, null, System.Globalization.CultureInfo.InvariantCulture); return returnObject; } public object CallRoleProviderMethod (string methodName, object[] parameters, Type[] paramTypes) { Type tempType = typeof(HttpContext).Assembly.GetType("System.Web.Security.Roles"); object returnObject = null; BindingFlags allBindingFlags = BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; MethodInfo method = null; if (paramTypes != null) { method = tempType.GetMethod(methodName, allBindingFlags, null, paramTypes, null); } else { method = tempType.GetMethod(methodName, allBindingFlags); } if (method != null) { if (HttpRuntime.NamedPermissionSet != null) { HttpRuntime.NamedPermissionSet.PermitOnly(); } returnObject = method.Invoke(null, parameters); } object[] newValues = new object[parameters.Length + 1]; newValues[0] = returnObject; int j = 1; for (int i = 0; i < (parameters.Length); i++) { newValues[j++] = parameters[i]; } returnObject = (object) newValues; return returnObject; } void IRegisteredObject.Stop(bool immediate) { HostingEnvironment.UnregisterObject(this); } } } // 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
- AssemblyAssociatedContentFileAttribute.cs
- StringUtil.cs
- DataServiceQueryProvider.cs
- WsdlInspector.cs
- BinaryObjectWriter.cs
- ApplicationSettingsBase.cs
- CategoryGridEntry.cs
- ResourcePart.cs
- MetadataPropertyAttribute.cs
- DoubleLink.cs
- DataGridViewCheckBoxColumn.cs
- InputLangChangeEvent.cs
- ImageListUtils.cs
- FolderNameEditor.cs
- ScopeCollection.cs
- FieldBuilder.cs
- BreakRecordTable.cs
- NameTable.cs
- ColorPalette.cs
- AuthenticationSection.cs
- OleDbPermission.cs
- TabPageDesigner.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- HttpCachePolicyElement.cs
- CompoundFileIOPermission.cs
- CaseCqlBlock.cs
- ResourceManager.cs
- ToolStripItemBehavior.cs
- Timeline.cs
- ReachDocumentPageSerializer.cs
- DateTimeOffsetStorage.cs
- TreeNodeCollectionEditor.cs
- DataGridLinkButton.cs
- Geometry.cs
- ServiceDescription.cs
- TrackPoint.cs
- ElementProxy.cs
- PenThreadPool.cs
- OperationCanceledException.cs
- AddInStore.cs
- ImagingCache.cs
- HotSpotCollectionEditor.cs
- C14NUtil.cs
- Timer.cs
- FlowDocumentReaderAutomationPeer.cs
- DesignerAttribute.cs
- COM2ComponentEditor.cs
- EditorZone.cs
- SymbolType.cs
- EnumMember.cs
- TimeZone.cs
- DrawingContextWalker.cs
- Select.cs
- SiteMapSection.cs
- Section.cs
- SuppressIldasmAttribute.cs
- WebAdminConfigurationHelper.cs
- DbConnectionStringBuilder.cs
- RepeaterItemEventArgs.cs
- Drawing.cs
- WSSecurityPolicy12.cs
- EditBehavior.cs
- TextServicesProperty.cs
- TcpHostedTransportConfiguration.cs
- IgnoreSection.cs
- ListViewInsertEventArgs.cs
- PropertyMap.cs
- ApplicationId.cs
- VolatileEnlistmentMultiplexing.cs
- XmlIncludeAttribute.cs
- AssertUtility.cs
- OverlappedContext.cs
- AddressAlreadyInUseException.cs
- WebEventTraceProvider.cs
- ColumnReorderedEventArgs.cs
- AnnotationComponentChooser.cs
- ExtractorMetadata.cs
- QualificationDataItem.cs
- TextElementCollectionHelper.cs
- NamedPermissionSet.cs
- DataGridViewSelectedColumnCollection.cs
- ObjectPersistData.cs
- QueryComponents.cs
- ControllableStoryboardAction.cs
- PropertyPathConverter.cs
- TextEffect.cs
- CapabilitiesAssignment.cs
- Policy.cs
- filewebrequest.cs
- GradientStopCollection.cs
- TextServicesDisplayAttributePropertyRanges.cs
- MdImport.cs
- PropertyGridCommands.cs
- TextSearch.cs
- InstanceHandleConflictException.cs
- ShaderEffect.cs
- SecurityKeyUsage.cs
- CaseInsensitiveComparer.cs
- UIPermission.cs
- BindingWorker.cs