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
- X509CertificateStore.cs
- PanelStyle.cs
- WsatAdminException.cs
- BulletedList.cs
- CircleHotSpot.cs
- Mappings.cs
- MembershipUser.cs
- BitmapSource.cs
- ListViewEditEventArgs.cs
- ProfileEventArgs.cs
- DataSourceControlBuilder.cs
- FastEncoderStatics.cs
- InvariantComparer.cs
- SqlDataSourceFilteringEventArgs.cs
- SmtpMail.cs
- DbConnectionPoolGroup.cs
- TrackBar.cs
- DelimitedListTraceListener.cs
- TreeViewItemAutomationPeer.cs
- MediaTimeline.cs
- SiteMapPath.cs
- AlternateView.cs
- DataIdProcessor.cs
- FutureFactory.cs
- PingReply.cs
- SettingsPropertyValue.cs
- MeshGeometry3D.cs
- SiteMap.cs
- SeekStoryboard.cs
- SAPICategories.cs
- MimeObjectFactory.cs
- HttpSessionStateWrapper.cs
- HttpListenerException.cs
- ClassImporter.cs
- NameValueSectionHandler.cs
- UnauthorizedAccessException.cs
- WorkflowInstanceTerminatedRecord.cs
- DocumentSequence.cs
- QueryExpr.cs
- MethodToken.cs
- InheritanceContextChangedEventManager.cs
- DockAndAnchorLayout.cs
- TrackingDataItem.cs
- EntityProviderServices.cs
- DataGridClipboardCellContent.cs
- DragStartedEventArgs.cs
- SudsWriter.cs
- BmpBitmapDecoder.cs
- CodeGenerator.cs
- DataExpression.cs
- CommonDialog.cs
- SecurityKeyType.cs
- PersonalizationAdministration.cs
- BamlReader.cs
- StorageEntityContainerMapping.cs
- PropertyInformation.cs
- ConstNode.cs
- LogicalExpr.cs
- TabItem.cs
- ForeignKeyConstraint.cs
- QueryCreatedEventArgs.cs
- StreamUpgradeInitiator.cs
- CustomSignedXml.cs
- Metafile.cs
- EventRouteFactory.cs
- SaveFileDialog.cs
- CapabilitiesAssignment.cs
- MetadataArtifactLoaderComposite.cs
- PermissionRequestEvidence.cs
- IChannel.cs
- SecurityHelper.cs
- PropertySourceInfo.cs
- MachineKeySection.cs
- BitVector32.cs
- ExtensionSimplifierMarkupObject.cs
- XPathNodePointer.cs
- Page.cs
- MenuItemBindingCollection.cs
- RelationshipEnd.cs
- JsonWriterDelegator.cs
- Matrix3D.cs
- Calendar.cs
- ObjRef.cs
- WebConfigurationFileMap.cs
- NetTcpSectionData.cs
- ScriptServiceAttribute.cs
- GenericsInstances.cs
- serverconfig.cs
- SqlConnectionString.cs
- CrossContextChannel.cs
- MulticastNotSupportedException.cs
- RuleSetDialog.cs
- mediaeventshelper.cs
- DataFormats.cs
- Perspective.cs
- CapabilitiesPattern.cs
- _NetRes.cs
- JpegBitmapEncoder.cs
- TreeNodeBinding.cs
- SettingsSection.cs