Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / MissingMemberException.cs / 1 / MissingMemberException.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: MissingMemberException ** ** ** Purpose: The exception class for versioning problems with DLLS. ** ** =============================================================================*/ namespace System { using System; using System.Runtime.Remoting; using System.Runtime.Serialization; using System.Runtime.CompilerServices; using System.Globalization; using System.Security.Permissions; [System.Runtime.InteropServices.ComVisible(true)] [Serializable] public class MissingMemberException : MemberAccessException, ISerializable { public MissingMemberException() : base(Environment.GetResourceString("Arg_MissingMemberException")) { SetErrorCode(__HResults.COR_E_MISSINGMEMBER); } public MissingMemberException(String message) : base(message) { SetErrorCode(__HResults.COR_E_MISSINGMEMBER); } public MissingMemberException(String message, Exception inner) : base(message, inner) { SetErrorCode(__HResults.COR_E_MISSINGMEMBER); } protected MissingMemberException(SerializationInfo info, StreamingContext context) : base (info, context) { ClassName = (String)info.GetString("MMClassName"); MemberName = (String)info.GetString("MMMemberName"); Signature = (byte[])info.GetValue("MMSignature", typeof(byte[])); } public override String Message { get { if (ClassName == null) { return base.Message; } else { // do any desired fixups to classname here. return String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("MissingMember_Name", ClassName + "." + MemberName + (Signature != null ? " " + FormatSignature(Signature) : ""))); } } } // Called to format signature [MethodImplAttribute(MethodImplOptions.InternalCall)] internal static extern String FormatSignature(byte [] signature); // Potentially called from the EE private MissingMemberException(String className, String memberName, byte[] signature) { ClassName = className; MemberName = memberName; Signature = signature; } public MissingMemberException(String className, String memberName) { ClassName = className; MemberName = memberName; } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info==null) { throw new ArgumentNullException("info"); } base.GetObjectData(info, context); info.AddValue("MMClassName", ClassName, typeof(String)); info.AddValue("MMMemberName", MemberName, typeof(String)); info.AddValue("MMSignature", Signature, typeof(byte[])); } // If ClassName != null, GetMessage will construct on the fly using it // and the other variables. This allows customization of the // format depending on the language environment. protected String ClassName; protected String MemberName; protected byte[] Signature; } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BinaryFormatterSinks.cs
- ControlPropertyNameConverter.cs
- GcSettings.cs
- CustomMenuItemCollection.cs
- odbcmetadatacollectionnames.cs
- SingleTagSectionHandler.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- EventTrigger.cs
- ActiveXHelper.cs
- SortDescription.cs
- DataGridViewRowEventArgs.cs
- ExpressionBuilder.cs
- BlurEffect.cs
- AdornerDecorator.cs
- ImportedNamespaceContextItem.cs
- ListCollectionView.cs
- Pair.cs
- ListItemsPage.cs
- PointKeyFrameCollection.cs
- SqlResolver.cs
- RelOps.cs
- SplineKeyFrames.cs
- XdrBuilder.cs
- DescriptionAttribute.cs
- UnsafeNativeMethods.cs
- KeyedHashAlgorithm.cs
- Walker.cs
- StrongNameHelpers.cs
- NamedPipeProcessProtocolHandler.cs
- dbenumerator.cs
- PrimitiveSchema.cs
- Latin1Encoding.cs
- ResourceCategoryAttribute.cs
- ImplicitInputBrush.cs
- WebPartMinimizeVerb.cs
- DesignerTextWriter.cs
- ToolStripOverflow.cs
- SessionStateModule.cs
- TileBrush.cs
- XmlSchema.cs
- ReflectionPermission.cs
- Calendar.cs
- TableCell.cs
- ObjectFullSpanRewriter.cs
- SecurityAlgorithmSuiteConverter.cs
- DataView.cs
- NegatedConstant.cs
- control.ime.cs
- VisualStyleRenderer.cs
- ObsoleteAttribute.cs
- DefaultSection.cs
- XmlQuerySequence.cs
- ClassicBorderDecorator.cs
- TypeDescriptionProviderAttribute.cs
- WhitespaceRuleLookup.cs
- ArgumentOutOfRangeException.cs
- XmlHierarchicalEnumerable.cs
- ProfileInfo.cs
- XmlReturnReader.cs
- CodeCommentStatement.cs
- CompilerParameters.cs
- SqlTransaction.cs
- WinEventQueueItem.cs
- UnsafeNativeMethods.cs
- LongTypeConverter.cs
- InplaceBitmapMetadataWriter.cs
- RijndaelCryptoServiceProvider.cs
- WorkerRequest.cs
- CalculatedColumn.cs
- BulletChrome.cs
- Attributes.cs
- DataTableCollection.cs
- ClassicBorderDecorator.cs
- XPathSelfQuery.cs
- FactoryGenerator.cs
- TailPinnedEventArgs.cs
- XmlArrayAttribute.cs
- DragDrop.cs
- EventListenerClientSide.cs
- ZipIOCentralDirectoryFileHeader.cs
- PopupControlService.cs
- BrowserCapabilitiesFactory.cs
- VirtualDirectoryMapping.cs
- ColorKeyFrameCollection.cs
- Identifier.cs
- SqlMethodAttribute.cs
- TextPenaltyModule.cs
- AddInEnvironment.cs
- GenerateTemporaryAssemblyTask.cs
- XmlWhitespace.cs
- HtmlTableCell.cs
- Vector3DCollectionConverter.cs
- ReachDocumentPageSerializer.cs
- DesignTableCollection.cs
- StreamingContext.cs
- _ContextAwareResult.cs
- DrawListViewSubItemEventArgs.cs
- HttpServerVarsCollection.cs
- TraceUtility.cs
- GlobalProxySelection.cs