Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConfigPathUtility.cs
- AccessibleObject.cs
- TabControl.cs
- CommonGetThemePartSize.cs
- WebPartChrome.cs
- BinaryConverter.cs
- XmlElement.cs
- DataGridBeginningEditEventArgs.cs
- ExpressionDumper.cs
- BufferedMessageWriter.cs
- _AcceptOverlappedAsyncResult.cs
- XmlByteStreamReader.cs
- DecimalAnimationUsingKeyFrames.cs
- Path.cs
- counter.cs
- XmlSchemaSet.cs
- MessageQueueEnumerator.cs
- CultureTableRecord.cs
- FrugalList.cs
- RectConverter.cs
- QuotedStringFormatReader.cs
- VisualBasicHelper.cs
- Util.cs
- CompilationUtil.cs
- XmlSignatureManifest.cs
- ElementHostPropertyMap.cs
- SocketInformation.cs
- DefaultMemberAttribute.cs
- XmlSchemaAttributeGroup.cs
- EventLog.cs
- MetadataCache.cs
- PointCollection.cs
- Filter.cs
- QueryCursorEventArgs.cs
- DivideByZeroException.cs
- DataGridViewIntLinkedList.cs
- StringReader.cs
- Control.cs
- SystemWebExtensionsSectionGroup.cs
- EdmRelationshipRoleAttribute.cs
- PeerNearMe.cs
- HtmlAnchor.cs
- DataGridViewElement.cs
- UpdatableGenericsFeature.cs
- EditorZone.cs
- DataControlCommands.cs
- WorkflowInspectionServices.cs
- TypedTableBaseExtensions.cs
- BuildResultCache.cs
- BStrWrapper.cs
- ScriptIgnoreAttribute.cs
- PagerSettings.cs
- ListViewInsertionMark.cs
- TreeBuilderBamlTranslator.cs
- ListView.cs
- QueryExecutionOption.cs
- TreeViewImageKeyConverter.cs
- MessageQueuePermissionEntryCollection.cs
- AudienceUriMode.cs
- ValueUnavailableException.cs
- ManagedCodeMarkers.cs
- PropertyChangingEventArgs.cs
- UnicodeEncoding.cs
- AsyncInvokeContext.cs
- MessageDecoder.cs
- DebugView.cs
- ParenthesizePropertyNameAttribute.cs
- EditorZone.cs
- Stream.cs
- PublisherIdentityPermission.cs
- ConfigXmlDocument.cs
- WebControlAdapter.cs
- TcpChannelHelper.cs
- FormsAuthenticationTicket.cs
- SqlCacheDependencySection.cs
- OracleConnection.cs
- FixedDocumentSequencePaginator.cs
- CodeTypeReference.cs
- HealthMonitoringSection.cs
- XmlSiteMapProvider.cs
- UIElement.cs
- MsmqChannelListenerBase.cs
- ClientSettingsSection.cs
- ValidationRuleCollection.cs
- FunctionNode.cs
- PublisherMembershipCondition.cs
- EntityDataSourceContainerNameItem.cs
- CharEntityEncoderFallback.cs
- ElementAction.cs
- DES.cs
- HttpApplication.cs
- KnownColorTable.cs
- PenThreadPool.cs
- ParenthesizePropertyNameAttribute.cs
- XmlElementAttributes.cs
- CAGDesigner.cs
- HeaderUtility.cs
- ProfileService.cs
- EntityContainerAssociationSet.cs
- UnicodeEncoding.cs