Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / System.ServiceModel.Activation / System / ServiceModel / Activation / ServiceHostFactory.cs / 1305376 / ServiceHostFactory.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Activation { using System.Collections.ObjectModel; using System.Reflection; using System.Runtime.CompilerServices; [TypeForwardedFrom("System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")] public class ServiceHostFactory : ServiceHostFactoryBase { CollectionreferencedAssemblies; public ServiceHostFactory() { this.referencedAssemblies = new Collection (); } internal void AddAssemblyReference(string assemblyName) { this.referencedAssemblies.Add(assemblyName); } public override ServiceHostBase CreateServiceHost(string constructorString, Uri[] baseAddresses) { if (!AspNetEnvironment.Enabled) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.Hosting_ProcessNotExecutingUnderHostedContext("ServiceHostFactory.CreateServiceHost"))); } if (string.IsNullOrEmpty(constructorString)) { throw FxTrace.Exception.Argument("constructorString", SR.Hosting_ServiceTypeNotProvided); } Type type = Type.GetType(constructorString, false); if (type == null) { //config service activation scenario if (this.referencedAssemblies.Count == 0) { AspNetEnvironment.Current.EnsureAllReferencedAssemblyLoaded(); } foreach (string assemblyName in this.referencedAssemblies) { Assembly assembly = Assembly.Load(assemblyName); type = assembly.GetType(constructorString, false); if (type != null) { break; } } } if (type == null) { Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); for (int i = 0; i < assemblies.Length; i++) { type = assemblies[i].GetType(constructorString, false); if (type != null) { break; } } } if (type == null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.Hosting_ServiceTypeNotResolved(constructorString))); } return CreateServiceHost(type, baseAddresses); } protected virtual ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses) { return new ServiceHost(serviceType, baseAddresses); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Activation { using System.Collections.ObjectModel; using System.Reflection; using System.Runtime.CompilerServices; [TypeForwardedFrom("System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")] public class ServiceHostFactory : ServiceHostFactoryBase { Collection referencedAssemblies; public ServiceHostFactory() { this.referencedAssemblies = new Collection (); } internal void AddAssemblyReference(string assemblyName) { this.referencedAssemblies.Add(assemblyName); } public override ServiceHostBase CreateServiceHost(string constructorString, Uri[] baseAddresses) { if (!AspNetEnvironment.Enabled) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.Hosting_ProcessNotExecutingUnderHostedContext("ServiceHostFactory.CreateServiceHost"))); } if (string.IsNullOrEmpty(constructorString)) { throw FxTrace.Exception.Argument("constructorString", SR.Hosting_ServiceTypeNotProvided); } Type type = Type.GetType(constructorString, false); if (type == null) { //config service activation scenario if (this.referencedAssemblies.Count == 0) { AspNetEnvironment.Current.EnsureAllReferencedAssemblyLoaded(); } foreach (string assemblyName in this.referencedAssemblies) { Assembly assembly = Assembly.Load(assemblyName); type = assembly.GetType(constructorString, false); if (type != null) { break; } } } if (type == null) { Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); for (int i = 0; i < assemblies.Length; i++) { type = assemblies[i].GetType(constructorString, false); if (type != null) { break; } } } if (type == null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.Hosting_ServiceTypeNotResolved(constructorString))); } return CreateServiceHost(type, baseAddresses); } protected virtual ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses) { return new ServiceHost(serviceType, baseAddresses); } } } // 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
- Annotation.cs
- DataTableExtensions.cs
- FrameworkPropertyMetadata.cs
- FormViewInsertedEventArgs.cs
- ProviderConnectionPoint.cs
- ComboBox.cs
- HelpKeywordAttribute.cs
- StreamReader.cs
- UIPermission.cs
- ArgIterator.cs
- ImageBrush.cs
- QuaternionAnimation.cs
- HealthMonitoringSectionHelper.cs
- SplitContainer.cs
- hresults.cs
- RoleManagerEventArgs.cs
- TableFieldsEditor.cs
- LineSegment.cs
- WebPartCatalogCloseVerb.cs
- SplitterEvent.cs
- bidPrivateBase.cs
- Visual.cs
- TablePattern.cs
- IgnorePropertiesAttribute.cs
- ObfuscationAttribute.cs
- TextCharacters.cs
- WebPartVerbsEventArgs.cs
- Underline.cs
- SafeCryptHandles.cs
- XpsThumbnail.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- SectionVisual.cs
- WorkflowInstanceSuspendedRecord.cs
- DataGridItem.cs
- XmlConverter.cs
- HttpInputStream.cs
- dtdvalidator.cs
- ClientRolePrincipal.cs
- Formatter.cs
- HMACSHA384.cs
- ContentControl.cs
- FrameworkContentElementAutomationPeer.cs
- WebPartEditorCancelVerb.cs
- BooleanFunctions.cs
- HttpModuleActionCollection.cs
- StartUpEventArgs.cs
- PrimitiveCodeDomSerializer.cs
- ResourceWriter.cs
- XPathItem.cs
- ConditionCollection.cs
- XmlSchemaDocumentation.cs
- TextStore.cs
- FileStream.cs
- CanonicalFontFamilyReference.cs
- XamlPathDataSerializer.cs
- XmlSchemaAttributeGroupRef.cs
- InputLanguageProfileNotifySink.cs
- SoapIncludeAttribute.cs
- RandomNumberGenerator.cs
- CheckBox.cs
- DataGridViewCellCollection.cs
- CasesDictionary.cs
- ArgumentException.cs
- LowerCaseStringConverter.cs
- ListChangedEventArgs.cs
- HttpCapabilitiesSectionHandler.cs
- smtpconnection.cs
- WebServiceBindingAttribute.cs
- unsafenativemethodsother.cs
- KeyInterop.cs
- HttpProcessUtility.cs
- ImplicitInputBrush.cs
- KeyGesture.cs
- Property.cs
- ArrayElementGridEntry.cs
- CodeAttributeArgumentCollection.cs
- path.cs
- SystemResourceKey.cs
- NativeMethods.cs
- OperationInfo.cs
- SafeThreadHandle.cs
- Splitter.cs
- ExtractorMetadata.cs
- SafeNativeMethods.cs
- EventToken.cs
- OutputCacheModule.cs
- XmlSortKey.cs
- HtmlTableCellCollection.cs
- SudsWriter.cs
- Transform3DGroup.cs
- RightsManagementEncryptionTransform.cs
- WebPartConnectionsCloseVerb.cs
- DecimalConstantAttribute.cs
- BigInt.cs
- XmlNavigatorFilter.cs
- FreezableDefaultValueFactory.cs
- TextFragmentEngine.cs
- WhitespaceSignificantCollectionAttribute.cs
- RadialGradientBrush.cs
- TransactionChannelListener.cs