Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / WSAddressing10ProblemHeaderQNameFault.cs / 1 / WSAddressing10ProblemHeaderQNameFault.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel { using System.Globalization; using System.Xml; using System.ServiceModel; using System.ServiceModel.Channels; using System.Text; using System.Collections.Generic; using System.Runtime.Serialization; using System.ServiceModel.Diagnostics; class WSAddressing10ProblemHeaderQNameFault : MessageFault { FaultCode code; FaultReason reason; string actor; string node; string invalidHeaderName; public WSAddressing10ProblemHeaderQNameFault(MessageHeaderException e) { this.invalidHeaderName = e.HeaderName; if (e.IsDuplicate) { this.code = FaultCode.CreateSenderFaultCode( new FaultCode(Addressing10Strings.InvalidAddressingHeader, AddressingVersion.WSAddressing10.Namespace, new FaultCode(Addressing10Strings.InvalidCardinality, AddressingVersion.WSAddressing10.Namespace))); } else { this.code = FaultCode.CreateSenderFaultCode( new FaultCode(Addressing10Strings.MessageAddressingHeaderRequired, AddressingVersion.WSAddressing10.Namespace)); } this.reason = new FaultReason(e.Message, CultureInfo.CurrentCulture); this.actor = ""; this.node = ""; } public WSAddressing10ProblemHeaderQNameFault(ActionMismatchAddressingException e) { this.invalidHeaderName = AddressingStrings.Action; this.code = FaultCode.CreateSenderFaultCode( new FaultCode(Addressing10Strings.ActionMismatch, AddressingVersion.WSAddressing10.Namespace)); this.reason = new FaultReason(e.Message, CultureInfo.CurrentCulture); this.actor = ""; this.node = ""; } public override string Actor { get { return actor; } } public override FaultCode Code { get { return code; } } public override bool HasDetail { get { return true; } } public override string Node { get { return node; } } public override FaultReason Reason { get { return reason; } } protected override void OnWriteDetail(XmlDictionaryWriter writer, EnvelopeVersion version) { if (version == EnvelopeVersion.Soap12) // Soap11 wants the detail in the header { OnWriteStartDetail(writer, version); OnWriteDetailContents(writer); writer.WriteEndElement(); } } protected override void OnWriteDetailContents(XmlDictionaryWriter writer) { writer.WriteStartElement(Addressing10Strings.ProblemHeaderQName, AddressingVersion.WSAddressing10.Namespace); writer.WriteQualifiedName(this.invalidHeaderName, AddressingVersion.WSAddressing10.Namespace); writer.WriteEndElement(); } public void AddHeaders(MessageHeaders headers) { if (headers.MessageVersion.Envelope == EnvelopeVersion.Soap11) { headers.Add(new WSAddressing10ProblemHeaderQNameHeader(this.invalidHeaderName)); } } class WSAddressing10ProblemHeaderQNameHeader : MessageHeader { string invalidHeaderName; public WSAddressing10ProblemHeaderQNameHeader(string invalidHeaderName) { this.invalidHeaderName = invalidHeaderName; } public override string Name { get { return Addressing10Strings.FaultDetail; } } public override string Namespace { get { return AddressingVersion.WSAddressing10.Namespace; } } protected override void OnWriteStartHeader(XmlDictionaryWriter writer, MessageVersion messageVersion) { writer.WriteStartElement(this.Name, this.Namespace); } protected override void OnWriteHeaderContents(XmlDictionaryWriter writer, MessageVersion messageVersion) { writer.WriteStartElement(Addressing10Strings.ProblemHeaderQName, this.Namespace); writer.WriteQualifiedName(this.invalidHeaderName, this.Namespace); writer.WriteEndElement(); } } } } // 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
- ServiceHost.cs
- AssemblyFilter.cs
- WsatConfiguration.cs
- ConfigurationStrings.cs
- VoiceSynthesis.cs
- ForwardPositionQuery.cs
- IResourceProvider.cs
- PathFigure.cs
- HttpVersion.cs
- DesignTimeTemplateParser.cs
- CodeIdentifiers.cs
- Overlapped.cs
- ToolStripCodeDomSerializer.cs
- NamespaceDecl.cs
- Int16.cs
- IIS7WorkerRequest.cs
- log.cs
- HttpRequestContext.cs
- FieldToken.cs
- ResourceExpressionEditorSheet.cs
- Schema.cs
- StringConverter.cs
- externdll.cs
- _CacheStreams.cs
- EventSetter.cs
- SoapHttpTransportImporter.cs
- RadialGradientBrush.cs
- ElapsedEventArgs.cs
- DataGridGeneralPage.cs
- FormsIdentity.cs
- ToolStripDropDownMenu.cs
- OptimalTextSource.cs
- NTAccount.cs
- FixedDSBuilder.cs
- SQLDateTime.cs
- MatrixTransform.cs
- ItemContainerProviderWrapper.cs
- ReadOnlyPropertyMetadata.cs
- GC.cs
- SimpleHandlerBuildProvider.cs
- GridSplitterAutomationPeer.cs
- OracleConnection.cs
- Hash.cs
- TransactionOptions.cs
- MultipleCopiesCollection.cs
- ToolStripRendererSwitcher.cs
- EncryptedType.cs
- CodeVariableDeclarationStatement.cs
- XmlIlGenerator.cs
- Buffer.cs
- DBSqlParserTable.cs
- TransformDescriptor.cs
- DynamicRenderer.cs
- LinqDataSourceUpdateEventArgs.cs
- CheckBoxRenderer.cs
- elementinformation.cs
- LocalsItemDescription.cs
- HttpCookiesSection.cs
- MemberProjectedSlot.cs
- WinEventTracker.cs
- Reference.cs
- HttpValueCollection.cs
- CDSsyncETWBCLProvider.cs
- Setter.cs
- ColorConvertedBitmap.cs
- InkCollectionBehavior.cs
- SemanticResolver.cs
- TraceContext.cs
- ConnectionManager.cs
- MappingMetadataHelper.cs
- PeerPresenceInfo.cs
- AnnotationAdorner.cs
- SwitchExpression.cs
- CacheDependency.cs
- HyperLinkStyle.cs
- ListBoxItemWrapperAutomationPeer.cs
- ConditionalExpression.cs
- ImportCatalogPart.cs
- TextBlock.cs
- ContextDataSourceContextData.cs
- WinOEToolBoxItem.cs
- EnumType.cs
- DrawingVisualDrawingContext.cs
- FrameworkObject.cs
- AnimationStorage.cs
- ContextDataSourceContextData.cs
- ResourcesGenerator.cs
- TabRenderer.cs
- DrawListViewItemEventArgs.cs
- ConnectionModeReader.cs
- WebDisplayNameAttribute.cs
- XsltSettings.cs
- Comparer.cs
- XmlSerializerFactory.cs
- CqlParserHelpers.cs
- Ref.cs
- AuthenticationModuleElementCollection.cs
- XamlContextStack.cs
- SoapCommonClasses.cs
- GetBrowserTokenRequest.cs