Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GeneralTransform3D.cs
- WebConfigurationFileMap.cs
- CollectionView.cs
- EventToken.cs
- InputScope.cs
- RoutedEventArgs.cs
- ManipulationDevice.cs
- ImageMetadata.cs
- FileClassifier.cs
- ProfileManager.cs
- mactripleDES.cs
- GeneralTransform3D.cs
- RequestSecurityTokenForGetBrowserToken.cs
- SQLByte.cs
- DbParameterCollectionHelper.cs
- InheritanceAttribute.cs
- DataServiceException.cs
- WebPartConnectionCollection.cs
- ImageConverter.cs
- LocalizabilityAttribute.cs
- PeerNearMe.cs
- ExpressionBuilderCollection.cs
- ThemeInfoAttribute.cs
- ConversionValidationRule.cs
- SourceInterpreter.cs
- WorkflowView.cs
- PagedControl.cs
- NativeMethods.cs
- FormsAuthenticationTicket.cs
- LicFileLicenseProvider.cs
- DefaultSerializationProviderAttribute.cs
- ValueOfAction.cs
- ClientUrlResolverWrapper.cs
- SqlMethodCallConverter.cs
- DropShadowBitmapEffect.cs
- Documentation.cs
- PerfService.cs
- ApplicationActivator.cs
- EventLogPermissionEntryCollection.cs
- SkewTransform.cs
- Executor.cs
- FormViewPageEventArgs.cs
- XmlDataDocument.cs
- SettingsProviderCollection.cs
- MouseActionConverter.cs
- Encoding.cs
- TypeListConverter.cs
- X509CertificateCollection.cs
- IDReferencePropertyAttribute.cs
- ErrorFormatter.cs
- SubpageParaClient.cs
- EllipseGeometry.cs
- DataObjectAttribute.cs
- ThreadExceptionEvent.cs
- WebPartMinimizeVerb.cs
- TableLayoutStyle.cs
- DynamicExpression.cs
- Camera.cs
- WebPartConnectionsCancelVerb.cs
- SecUtil.cs
- ScriptServiceAttribute.cs
- DrawingState.cs
- TextEndOfParagraph.cs
- ACE.cs
- Event.cs
- LongTypeConverter.cs
- TCPClient.cs
- TabletDevice.cs
- XmlSchemaCompilationSettings.cs
- PropertyReferenceExtension.cs
- ApplicationBuildProvider.cs
- TextRangeProviderWrapper.cs
- Italic.cs
- ProxyDataContractResolver.cs
- ToolStripPanel.cs
- DependencyPropertyDescriptor.cs
- _BaseOverlappedAsyncResult.cs
- CustomAttribute.cs
- HeaderCollection.cs
- MapPathBasedVirtualPathProvider.cs
- BinHexDecoder.cs
- RectangleHotSpot.cs
- InertiaExpansionBehavior.cs
- SqlCommandSet.cs
- AVElementHelper.cs
- PseudoWebRequest.cs
- TemplateLookupAction.cs
- SessionParameter.cs
- PointLightBase.cs
- PopupRoot.cs
- HtmlHead.cs
- CatalogZoneBase.cs
- UnsettableComboBox.cs
- FindCriteriaApril2005.cs
- SqlConnection.cs
- AppDomain.cs
- DataTable.cs
- TimerTable.cs
- MediaElementAutomationPeer.cs
- FixedSOMPage.cs