Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- TraceSwitch.cs
- UnicastIPAddressInformationCollection.cs
- Stream.cs
- XmlSchemaExporter.cs
- CommonDialog.cs
- MobileComponentEditorPage.cs
- ObjectNotFoundException.cs
- XmlWrappingReader.cs
- SerialPort.cs
- ConfigXmlReader.cs
- CodeCommentStatement.cs
- BindingBase.cs
- ReadWriteObjectLock.cs
- GraphicsPathIterator.cs
- XmlCompatibilityReader.cs
- ListControl.cs
- WebPartHeaderCloseVerb.cs
- CheckBox.cs
- sitestring.cs
- FontWeights.cs
- CompilerGlobalScopeAttribute.cs
- MasterPageBuildProvider.cs
- ObjectDataProvider.cs
- RowBinding.cs
- ValidatorCompatibilityHelper.cs
- WebServiceEnumData.cs
- TcpTransportSecurity.cs
- SeparatorAutomationPeer.cs
- Lasso.cs
- SymbolUsageManager.cs
- Attributes.cs
- PropertyGridView.cs
- CultureSpecificStringDictionary.cs
- _ListenerResponseStream.cs
- DoWorkEventArgs.cs
- BuildManagerHost.cs
- Bidi.cs
- MILUtilities.cs
- OpenFileDialog.cs
- OperationAbortedException.cs
- Scene3D.cs
- SQLInt16Storage.cs
- TextServicesContext.cs
- UpdatePanelTrigger.cs
- ListViewEditEventArgs.cs
- sqlcontext.cs
- AddInBase.cs
- HwndSourceKeyboardInputSite.cs
- SpStreamWrapper.cs
- SpellerError.cs
- BaseResourcesBuildProvider.cs
- Schema.cs
- InputMethodStateTypeInfo.cs
- XamlClipboardData.cs
- SqlProfileProvider.cs
- ReadOnlyDataSourceView.cs
- VerificationAttribute.cs
- HtmlTernaryTree.cs
- XsltLibrary.cs
- ActivityExecutionFilter.cs
- LambdaExpression.cs
- MediaContextNotificationWindow.cs
- MetadataException.cs
- HttpClientCertificate.cs
- SupportingTokenBindingElement.cs
- CompositeDataBoundControl.cs
- XmlMembersMapping.cs
- CodeExpressionStatement.cs
- SqlCacheDependencyDatabase.cs
- ImageConverter.cs
- TypeSystem.cs
- FrugalList.cs
- ExpressionBinding.cs
- ToolStripDropDownItem.cs
- FontUnitConverter.cs
- HandoffBehavior.cs
- UpdateProgress.cs
- LocalizedNameDescriptionPair.cs
- LambdaCompiler.Generated.cs
- RegexCaptureCollection.cs
- SqlLiftIndependentRowExpressions.cs
- PageContentAsyncResult.cs
- PipelineModuleStepContainer.cs
- DeviceContexts.cs
- Model3D.cs
- LockCookie.cs
- DbBuffer.cs
- Wizard.cs
- Operator.cs
- BindUriHelper.cs
- QueryOpeningEnumerator.cs
- ViewCellRelation.cs
- WebPartConnectionCollection.cs
- AppDomainShutdownMonitor.cs
- LogReservationCollection.cs
- SecurityResources.cs
- EventDescriptorCollection.cs
- TypeLoader.cs
- LayoutManager.cs
- DisposableCollectionWrapper.cs