Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / Configuration / ProvidersHelper.cs / 1 / ProvidersHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Configuration; using System.Configuration.Provider; using System.Web.Compilation; using System.Collections.Specialized; using System; using System.Security; using System.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public static class ProvidersHelper { /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Low)] public static ProviderBase InstantiateProvider(ProviderSettings providerSettings, Type providerType) { ProviderBase provider = null; try { string pnType = (providerSettings.Type == null) ? null : providerSettings.Type.Trim(); if (string.IsNullOrEmpty(pnType)) throw new ArgumentException(SR.GetString(SR.Provider_no_type_name)); Type t = ConfigUtil.GetType(pnType, "type", providerSettings, true, true); if (!providerType.IsAssignableFrom(t)) throw new ArgumentException(SR.GetString(SR.Provider_must_implement_type, providerType.ToString())); provider = (ProviderBase)HttpRuntime.CreatePublicInstance(t); // Because providers modify the parameters collection (i.e. delete stuff), pass in a clone of the collection NameValueCollection pars = providerSettings.Parameters; NameValueCollection cloneParams = new NameValueCollection(pars.Count, StringComparer.Ordinal); foreach (string key in pars) cloneParams[key] = pars[key]; provider.Initialize(providerSettings.Name, cloneParams); } catch (Exception e) { if (e is ConfigurationException) throw; throw new ConfigurationErrorsException(e.Message, providerSettings.ElementInformation.Properties["type"].Source, providerSettings.ElementInformation.Properties["type"].LineNumber); } return provider; } [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Low)] public static void InstantiateProviders(ProviderSettingsCollection configProviders, ProviderCollection providers, Type providerType) { foreach (ProviderSettings ps in configProviders) { providers.Add(InstantiateProvider(ps, providerType)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Configuration; using System.Configuration.Provider; using System.Web.Compilation; using System.Collections.Specialized; using System; using System.Security; using System.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public static class ProvidersHelper { /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Low)] public static ProviderBase InstantiateProvider(ProviderSettings providerSettings, Type providerType) { ProviderBase provider = null; try { string pnType = (providerSettings.Type == null) ? null : providerSettings.Type.Trim(); if (string.IsNullOrEmpty(pnType)) throw new ArgumentException(SR.GetString(SR.Provider_no_type_name)); Type t = ConfigUtil.GetType(pnType, "type", providerSettings, true, true); if (!providerType.IsAssignableFrom(t)) throw new ArgumentException(SR.GetString(SR.Provider_must_implement_type, providerType.ToString())); provider = (ProviderBase)HttpRuntime.CreatePublicInstance(t); // Because providers modify the parameters collection (i.e. delete stuff), pass in a clone of the collection NameValueCollection pars = providerSettings.Parameters; NameValueCollection cloneParams = new NameValueCollection(pars.Count, StringComparer.Ordinal); foreach (string key in pars) cloneParams[key] = pars[key]; provider.Initialize(providerSettings.Name, cloneParams); } catch (Exception e) { if (e is ConfigurationException) throw; throw new ConfigurationErrorsException(e.Message, providerSettings.ElementInformation.Properties["type"].Source, providerSettings.ElementInformation.Properties["type"].LineNumber); } return provider; } [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Low)] public static void InstantiateProviders(ProviderSettingsCollection configProviders, ProviderCollection providers, Type providerType) { foreach (ProviderSettings ps in configProviders) { providers.Add(InstantiateProvider(ps, providerType)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlLanguage.cs
- assertwrapper.cs
- SessionViewState.cs
- DataBinding.cs
- IUnknownConstantAttribute.cs
- SQLStringStorage.cs
- TextElementCollection.cs
- ClientFormsIdentity.cs
- BindingNavigator.cs
- Substitution.cs
- TargetControlTypeCache.cs
- RectangleHotSpot.cs
- ItemsControlAutomationPeer.cs
- Facet.cs
- UnknownWrapper.cs
- httpapplicationstate.cs
- WebSysDefaultValueAttribute.cs
- VolatileEnlistmentState.cs
- StringConcat.cs
- NativeMethods.cs
- Policy.cs
- RSAPKCS1SignatureFormatter.cs
- UncommonField.cs
- SourceFilter.cs
- DataRelation.cs
- ThreadInterruptedException.cs
- TextSelectionProcessor.cs
- ArglessEventHandlerProxy.cs
- UIElementCollection.cs
- LogExtent.cs
- HttpCapabilitiesSectionHandler.cs
- ServiceThrottlingElement.cs
- XmlUrlResolver.cs
- MeasurementDCInfo.cs
- ListItemConverter.cs
- EntityClientCacheEntry.cs
- DataBindingExpressionBuilder.cs
- CodeDirectionExpression.cs
- ConnectionPointGlyph.cs
- SoapFault.cs
- AsyncStreamReader.cs
- RectValueSerializer.cs
- WindowsMenu.cs
- SimpleTextLine.cs
- CompilationLock.cs
- GraphicsPathIterator.cs
- PropertyCollection.cs
- PopupEventArgs.cs
- StrokeNodeOperations2.cs
- MaskedTextProvider.cs
- HttpListener.cs
- OuterGlowBitmapEffect.cs
- IPAddressCollection.cs
- _HelperAsyncResults.cs
- _UncName.cs
- SQlBooleanStorage.cs
- ExtendedPropertyInfo.cs
- XPathNodeHelper.cs
- PrivilegeNotHeldException.cs
- BitmapCache.cs
- LineVisual.cs
- AggregateNode.cs
- CodeExpressionStatement.cs
- SplitContainerDesigner.cs
- Activator.cs
- COM2TypeInfoProcessor.cs
- ellipse.cs
- GradientPanel.cs
- XpsSerializationException.cs
- XmlTextReader.cs
- ToolBarButton.cs
- CharacterBufferReference.cs
- ProxyGenerator.cs
- ComboBoxHelper.cs
- WebRequestModuleElement.cs
- DataServiceExpressionVisitor.cs
- InstanceNotFoundException.cs
- TemplateParser.cs
- UpdateProgress.cs
- itemelement.cs
- ObjectAnimationUsingKeyFrames.cs
- EncryptedType.cs
- DbDeleteCommandTree.cs
- IDispatchConstantAttribute.cs
- SystemTcpConnection.cs
- InputScope.cs
- ActivityDesignerResources.cs
- GridEntryCollection.cs
- ProgressBar.cs
- WebServiceParameterData.cs
- Thread.cs
- DbConnectionFactory.cs
- SelfIssuedAuthRSAPKCS1SignatureFormatter.cs
- File.cs
- MediaContextNotificationWindow.cs
- XmlReaderDelegator.cs
- RC2CryptoServiceProvider.cs
- ListDictionary.cs
- WindowsRebar.cs
- HttpException.cs