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
- RectAnimationClockResource.cs
- ServicePoint.cs
- filewebresponse.cs
- SqlUserDefinedTypeAttribute.cs
- Point3DAnimation.cs
- AdapterDictionary.cs
- XmlSchema.cs
- ProcessStartInfo.cs
- Grid.cs
- AuthenticatingEventArgs.cs
- PageCache.cs
- SafeMILHandleMemoryPressure.cs
- EasingFunctionBase.cs
- ForEachDesigner.xaml.cs
- MenuItem.cs
- RawUIStateInputReport.cs
- DataGridViewRowPrePaintEventArgs.cs
- RestHandlerFactory.cs
- TextRunTypographyProperties.cs
- Int32Rect.cs
- MatrixTransform.cs
- ContextToken.cs
- HtmlAnchor.cs
- CharAnimationUsingKeyFrames.cs
- LinearGradientBrush.cs
- Environment.cs
- ButtonField.cs
- DataSetUtil.cs
- Converter.cs
- XmlRootAttribute.cs
- Match.cs
- ProviderMetadataCachedInformation.cs
- Container.cs
- TraceUtility.cs
- RuntimeConfigLKG.cs
- ScrollChangedEventArgs.cs
- ReadOnlyDictionary.cs
- PropertyGrid.cs
- FrameworkElementAutomationPeer.cs
- GridViewColumnHeaderAutomationPeer.cs
- HybridCollection.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- MissingFieldException.cs
- Environment.cs
- SecurityKeyUsage.cs
- ScriptMethodAttribute.cs
- FatalException.cs
- TableRow.cs
- SessionPageStateSection.cs
- LongAverageAggregationOperator.cs
- JoinCqlBlock.cs
- ObjectDataSourceDisposingEventArgs.cs
- UnsafeNativeMethods.cs
- XsdDataContractImporter.cs
- WpfXamlMember.cs
- GridViewCancelEditEventArgs.cs
- SystemResourceHost.cs
- Metafile.cs
- HttpFormatExtensions.cs
- Header.cs
- TextAdaptor.cs
- PersonalizableTypeEntry.cs
- WinCategoryAttribute.cs
- PathSegmentCollection.cs
- UserPrincipalNameElement.cs
- FixedHyperLink.cs
- OdbcConnectionStringbuilder.cs
- HttpInputStream.cs
- TileBrush.cs
- DesignerAutoFormat.cs
- RootDesignerSerializerAttribute.cs
- Calendar.cs
- FormViewModeEventArgs.cs
- NativeMethods.cs
- Guid.cs
- XsltQilFactory.cs
- SqlRemoveConstantOrderBy.cs
- Int32.cs
- TextProperties.cs
- TargetControlTypeCache.cs
- PersonalizationProviderCollection.cs
- TriState.cs
- PathParser.cs
- AsyncResult.cs
- GridItemPatternIdentifiers.cs
- _AcceptOverlappedAsyncResult.cs
- DashStyle.cs
- TableLayoutStyle.cs
- PageThemeBuildProvider.cs
- MobileRedirect.cs
- SiteMembershipCondition.cs
- MenuItemCollection.cs
- XmlDictionaryString.cs
- _IPv6Address.cs
- CustomWebEventKey.cs
- Validator.cs
- Parser.cs
- State.cs
- ValidationRuleCollection.cs
- TakeOrSkipWhileQueryOperator.cs