Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / XPathException.cs / 1305376 / 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.LinkDemand,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.LinkDemand,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
- XmlWriterTraceListener.cs
- CustomAttribute.cs
- SystemTcpConnection.cs
- DiagnosticEventProvider.cs
- ValueCollectionParameterReader.cs
- CompositeFontInfo.cs
- FixedTextSelectionProcessor.cs
- SqlDataSourceQueryEditorForm.cs
- BaseDataListActionList.cs
- TreeNodeStyle.cs
- formatter.cs
- IsolatedStorage.cs
- OracleBFile.cs
- BaseDataListPage.cs
- SimpleType.cs
- TargetException.cs
- Point4DValueSerializer.cs
- XmlNodeReader.cs
- AttributeXamlType.cs
- SqlTopReducer.cs
- SafeFileMapViewHandle.cs
- ByteStreamMessageEncodingElement.cs
- ClipboardProcessor.cs
- DataServiceHostWrapper.cs
- Matrix3DStack.cs
- WorkflowFileItem.cs
- EditModeSwitchButton.cs
- DataGridItemCollection.cs
- RMEnrollmentPage1.cs
- InternalControlCollection.cs
- WindowsListViewGroupSubsetLink.cs
- Size.cs
- ControllableStoryboardAction.cs
- ConfigurationManagerInternal.cs
- InkCanvas.cs
- XmlStreamStore.cs
- Tracking.cs
- DBPropSet.cs
- BasicKeyConstraint.cs
- StatusBar.cs
- figurelengthconverter.cs
- InvalidContentTypeException.cs
- InputElement.cs
- DisplayInformation.cs
- BitmapPalette.cs
- Int32Storage.cs
- MetadataSection.cs
- GridView.cs
- DynamicArgumentDesigner.xaml.cs
- BlurBitmapEffect.cs
- LookupBindingPropertiesAttribute.cs
- XpsSerializationManagerAsync.cs
- OdbcUtils.cs
- EncodingNLS.cs
- TableItemPattern.cs
- DateTimeOffset.cs
- EntitySqlQueryCacheKey.cs
- MenuItem.cs
- SemanticBasicElement.cs
- IncrementalHitTester.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- ToolBarPanel.cs
- DataService.cs
- DictionaryManager.cs
- mediapermission.cs
- SqlNotificationRequest.cs
- AuthorizationRule.cs
- RelationshipManager.cs
- SmtpReplyReader.cs
- KerberosReceiverSecurityToken.cs
- GenerateDerivedKeyRequest.cs
- DataRecord.cs
- TablePatternIdentifiers.cs
- Bold.cs
- _FtpDataStream.cs
- ProjectionPathBuilder.cs
- TransformerInfoCollection.cs
- InstalledFontCollection.cs
- HtmlPhoneCallAdapter.cs
- SmiTypedGetterSetter.cs
- ResourceKey.cs
- HtmlMobileTextWriter.cs
- UInt16Converter.cs
- ProfileSettingsCollection.cs
- InfoCardAsymmetricCrypto.cs
- FtpWebResponse.cs
- SetIndexBinder.cs
- TableLayoutStyleCollection.cs
- ScriptResourceMapping.cs
- SmtpAuthenticationManager.cs
- SqlDataSourceFilteringEventArgs.cs
- ImageList.cs
- PresentationTraceSources.cs
- precedingquery.cs
- ParseNumbers.cs
- PaintValueEventArgs.cs
- BulletedList.cs
- WinCategoryAttribute.cs
- ArraySortHelper.cs
- BitmapVisualManager.cs