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
- WmpBitmapDecoder.cs
- StringFormat.cs
- XmlWrappingReader.cs
- AsymmetricSignatureFormatter.cs
- ValidationErrorCollection.cs
- XmlDictionaryWriter.cs
- ModifierKeysConverter.cs
- SHA384Managed.cs
- DayRenderEvent.cs
- XmlQueryRuntime.cs
- cryptoapiTransform.cs
- MonthChangedEventArgs.cs
- DynamicControlParameter.cs
- ObjectDataSourceDisposingEventArgs.cs
- FactoryRecord.cs
- HttpConfigurationSystem.cs
- ConfigXmlElement.cs
- HtmlProps.cs
- PropertyPath.cs
- AnnotationResource.cs
- X509CertificateValidator.cs
- XmlSchemaInferenceException.cs
- PrintController.cs
- Tablet.cs
- DataKeyArray.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- ObjectSet.cs
- XNodeNavigator.cs
- AppearanceEditorPart.cs
- XmlCodeExporter.cs
- DataGridViewTextBoxCell.cs
- XmlDataLoader.cs
- XPathNodeList.cs
- TemplateComponentConnector.cs
- InkCanvasSelectionAdorner.cs
- Point.cs
- PolicyManager.cs
- XmlLinkedNode.cs
- tibetanshape.cs
- FusionWrap.cs
- WindowsFormsLinkLabel.cs
- WorkflowServiceBehavior.cs
- RichTextBox.cs
- PropertyEntry.cs
- SecurityBindingElement.cs
- XComponentModel.cs
- RawAppCommandInputReport.cs
- FacetDescription.cs
- ClockGroup.cs
- XPathNodeHelper.cs
- MSAAEventDispatcher.cs
- ToolStripPanelCell.cs
- CompilerParameters.cs
- InputGestureCollection.cs
- MimeXmlReflector.cs
- NativeMethodsCLR.cs
- ParagraphVisual.cs
- OdbcStatementHandle.cs
- PaperSource.cs
- ClientUtils.cs
- HelpHtmlBuilder.cs
- TypeUsage.cs
- Int32Converter.cs
- XmlAggregates.cs
- HttpsChannelListener.cs
- XmlRawWriterWrapper.cs
- TransformPattern.cs
- SqlFlattener.cs
- AutomationElement.cs
- Label.cs
- CompensationDesigner.cs
- SqlConnectionManager.cs
- PropertyPathWorker.cs
- ObjectDataSourceStatusEventArgs.cs
- ReadWriteObjectLock.cs
- ProcessHostConfigUtils.cs
- DataGridTablesFactory.cs
- CompositionTarget.cs
- HyperLinkField.cs
- ProgressBarBrushConverter.cs
- Geometry.cs
- HtmlMeta.cs
- RemoteWebConfigurationHostServer.cs
- ManagementNamedValueCollection.cs
- ReferencedAssembly.cs
- __ConsoleStream.cs
- EventManager.cs
- DataGridTable.cs
- HijriCalendar.cs
- XmlWrappingReader.cs
- XmlExceptionHelper.cs
- PrtCap_Public.cs
- WsatTransactionHeader.cs
- PasswordBox.cs
- XmlProcessingInstruction.cs
- elementinformation.cs
- XmlSchemaValidationException.cs
- ArrayEditor.cs
- DocumentSchemaValidator.cs
- BooleanProjectedSlot.cs