Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Xml / System / Xml / XPath / XPathException.cs / 1 / XPathException.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.XPath { using System; using System.IO; using System.Resources; using System.Runtime.Serialization; using System.Diagnostics; using System.Security.Permissions; // Represents the exception that is thrown when there is error processing an // XPath expression. [Serializable] public class XPathException : SystemException { // we need to keep this members for V1 serialization compatibility string res; string[] args; // message != null for V1 & V2 exceptions deserialized in Whidbey // message == null for created V2 exceptions; the exception message is stored in Exception._message string message; protected XPathException(SerializationInfo info, StreamingContext context) : base(info, context) { res = (string ) info.GetValue("res" , typeof(string )); args = (string[]) info.GetValue("args", typeof(string[])); // deserialize optional members string version = null; foreach ( SerializationEntry e in info ) { if ( e.Name == "version" ) { version = (string)e.Value; } } if (version == null) { // deserializing V1 exception message = CreateMessage(res, args); } else { // deserializing V2 or higher exception -> exception message is serialized by the base class (Exception._message) message = null; } } [SecurityPermissionAttribute(SecurityAction.Demand,SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue("res" , res ); info.AddValue("args", args); info.AddValue("version", "2.0"); } public XPathException() : this (string.Empty, (Exception) null) {} public XPathException(string message) : this (message, (Exception) null) {} public XPathException(string message, Exception innerException) : this(Res.Xml_UserException, new string[] { message }, innerException) { } internal static XPathException Create(string res) { return new XPathException(res, (string[])null); } internal static XPathException Create(string res, string arg) { return new XPathException(res, new string[] { arg }); } internal static XPathException Create(string res, string arg, string arg2) { return new XPathException(res, new string[] { arg, arg2 }); } internal static XPathException Create(string res, string arg, Exception innerException) { return new XPathException(res, new string[] { arg }, innerException); } private XPathException(string res, string[] args) : this(res, args, null) { } private XPathException(string res, string[] args, Exception inner) : base(CreateMessage(res, args), inner) { HResult = HResults.XmlXPath; this.res = res; this.args = args; } private static string CreateMessage(string res, string[] args) { try { string message = Res.GetString(res, args); if (message == null) message = "UNKNOWN("+res+")"; return message; } catch ( MissingManifestResourceException ) { return "UNKNOWN("+res+")"; } } public override string Message { get { return (message == null) ? base.Message : message; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.XPath { using System; using System.IO; using System.Resources; using System.Runtime.Serialization; using System.Diagnostics; using System.Security.Permissions; // Represents the exception that is thrown when there is error processing an // XPath expression. [Serializable] public class XPathException : SystemException { // we need to keep this members for V1 serialization compatibility string res; string[] args; // message != null for V1 & V2 exceptions deserialized in Whidbey // message == null for created V2 exceptions; the exception message is stored in Exception._message string message; protected XPathException(SerializationInfo info, StreamingContext context) : base(info, context) { res = (string ) info.GetValue("res" , typeof(string )); args = (string[]) info.GetValue("args", typeof(string[])); // deserialize optional members string version = null; foreach ( SerializationEntry e in info ) { if ( e.Name == "version" ) { version = (string)e.Value; } } if (version == null) { // deserializing V1 exception message = CreateMessage(res, args); } else { // deserializing V2 or higher exception -> exception message is serialized by the base class (Exception._message) message = null; } } [SecurityPermissionAttribute(SecurityAction.Demand,SerializationFormatter=true)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue("res" , res ); info.AddValue("args", args); info.AddValue("version", "2.0"); } public XPathException() : this (string.Empty, (Exception) null) {} public XPathException(string message) : this (message, (Exception) null) {} public XPathException(string message, Exception innerException) : this(Res.Xml_UserException, new string[] { message }, innerException) { } internal static XPathException Create(string res) { return new XPathException(res, (string[])null); } internal static XPathException Create(string res, string arg) { return new XPathException(res, new string[] { arg }); } internal static XPathException Create(string res, string arg, string arg2) { return new XPathException(res, new string[] { arg, arg2 }); } internal static XPathException Create(string res, string arg, Exception innerException) { return new XPathException(res, new string[] { arg }, innerException); } private XPathException(string res, string[] args) : this(res, args, null) { } private XPathException(string res, string[] args, Exception inner) : base(CreateMessage(res, args), inner) { HResult = HResults.XmlXPath; this.res = res; this.args = args; } private static string CreateMessage(string res, string[] args) { try { string message = Res.GetString(res, args); if (message == null) message = "UNKNOWN("+res+")"; return message; } catch ( MissingManifestResourceException ) { return "UNKNOWN("+res+")"; } } public override string Message { get { return (message == null) ? base.Message : message; } } } } // 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
- SignatureHelper.cs
- EventProviderTraceListener.cs
- __ConsoleStream.cs
- ActivitiesCollection.cs
- OleDbRowUpdatedEvent.cs
- PersonalizableAttribute.cs
- DocumentReference.cs
- SafeNativeMethods.cs
- SecureStringHasher.cs
- GridSplitterAutomationPeer.cs
- PiiTraceSource.cs
- PropertyFilterAttribute.cs
- Marshal.cs
- HMACSHA256.cs
- FillErrorEventArgs.cs
- XPathSingletonIterator.cs
- PictureBox.cs
- AdPostCacheSubstitution.cs
- WorkflowValidationFailedException.cs
- AspNetHostingPermission.cs
- ReflectPropertyDescriptor.cs
- TextModifier.cs
- AdornerLayer.cs
- GraphicsContainer.cs
- FormClosedEvent.cs
- HashRepartitionStream.cs
- Vector3DKeyFrameCollection.cs
- ReliableSession.cs
- WebPartExportVerb.cs
- LayoutInformation.cs
- MessageEventSubscriptionService.cs
- X509SecurityTokenAuthenticator.cs
- TextBoxBase.cs
- ServiceBehaviorAttribute.cs
- PropertyMap.cs
- HtmlTernaryTree.cs
- ColorPalette.cs
- NumericExpr.cs
- SerializableTypeCodeDomSerializer.cs
- DbDataAdapter.cs
- MimePart.cs
- Task.cs
- SchemaMerger.cs
- BinaryCommonClasses.cs
- ExtensionWindowHeader.cs
- Floater.cs
- WebPartConnectionsCloseVerb.cs
- HttpClientChannel.cs
- SkipStoryboardToFill.cs
- SequenceNumber.cs
- CharacterBufferReference.cs
- GiveFeedbackEvent.cs
- IdentitySection.cs
- JapaneseLunisolarCalendar.cs
- FacetEnabledSchemaElement.cs
- DirectoryObjectSecurity.cs
- SqlBinder.cs
- SchemaType.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- RestClientProxyHandler.cs
- WebServiceClientProxyGenerator.cs
- ConstructorArgumentAttribute.cs
- IssuedTokenClientBehaviorsElement.cs
- ImageSourceValueSerializer.cs
- sqlnorm.cs
- ProofTokenCryptoHandle.cs
- DataGridColumnEventArgs.cs
- XmlSchemaImport.cs
- ZoomComboBox.cs
- WorkflowWebService.cs
- webbrowsersite.cs
- InkCanvasSelectionAdorner.cs
- DataServiceStreamProviderWrapper.cs
- WebPartMovingEventArgs.cs
- _NegoState.cs
- PenCursorManager.cs
- OdbcParameter.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- BitmapCodecInfo.cs
- UriScheme.cs
- AdornerLayer.cs
- XhtmlBasicCalendarAdapter.cs
- TagMapCollection.cs
- OdbcConnectionOpen.cs
- nulltextnavigator.cs
- SingleTagSectionHandler.cs
- EllipseGeometry.cs
- PropertySet.cs
- TCEAdapterGenerator.cs
- DbConnectionFactory.cs
- WebPartVerbCollection.cs
- TableCellAutomationPeer.cs
- FacetEnabledSchemaElement.cs
- XmlCharCheckingReader.cs
- Privilege.cs
- UseLicense.cs
- InternalReceiveMessage.cs
- Accessors.cs
- TableLayoutStyleCollection.cs
- ImageField.cs