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
- DocumentProperties.cs
- TextBounds.cs
- GenericsInstances.cs
- Section.cs
- PageAsyncTaskManager.cs
- EditCommandColumn.cs
- BuildDependencySet.cs
- DataControlFieldCollection.cs
- HttpMethodAttribute.cs
- ZoomingMessageFilter.cs
- ConfigurationManagerInternalFactory.cs
- FontFaceLayoutInfo.cs
- CollectionBuilder.cs
- Label.cs
- Matrix3DConverter.cs
- SessionEndedEventArgs.cs
- StorageAssociationTypeMapping.cs
- HttpHeaderCollection.cs
- LinkClickEvent.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- SurrogateSelector.cs
- ArgIterator.cs
- DataGridClipboardCellContent.cs
- VisualBrush.cs
- ImpersonationContext.cs
- TypeGeneratedEventArgs.cs
- PolyBezierSegmentFigureLogic.cs
- DiscreteKeyFrames.cs
- DataGridViewColumnStateChangedEventArgs.cs
- SqlUserDefinedTypeAttribute.cs
- ExternalException.cs
- LeftCellWrapper.cs
- CallSiteOps.cs
- DataGridViewTopLeftHeaderCell.cs
- MetadataCache.cs
- ExtenderProvidedPropertyAttribute.cs
- TypefaceMap.cs
- PropertyKey.cs
- ExpressionDumper.cs
- AccessorTable.cs
- AsyncCodeActivity.cs
- PropertyPathWorker.cs
- WizardPanelChangingEventArgs.cs
- TcpChannelHelper.cs
- Parameter.cs
- FilteredDataSetHelper.cs
- StringHandle.cs
- _ProxyRegBlob.cs
- RangeValuePattern.cs
- SoapExtensionTypeElement.cs
- ColumnBinding.cs
- XmlSchemaExporter.cs
- AnchoredBlock.cs
- NumberSubstitution.cs
- HostProtectionException.cs
- SecurityDocument.cs
- MarkedHighlightComponent.cs
- CompilerTypeWithParams.cs
- RegionInfo.cs
- ScriptReferenceBase.cs
- WebSysDisplayNameAttribute.cs
- Literal.cs
- SecurityDescriptor.cs
- Permission.cs
- CssTextWriter.cs
- DataReaderContainer.cs
- RuntimeCompatibilityAttribute.cs
- ClusterRegistryConfigurationProvider.cs
- DbLambda.cs
- PerformanceCountersElement.cs
- RootCodeDomSerializer.cs
- _DynamicWinsockMethods.cs
- WindowsTreeView.cs
- ValueType.cs
- InvalidDataContractException.cs
- AnnotationHighlightLayer.cs
- ExternalCalls.cs
- ButtonBaseAdapter.cs
- StandardRuntimeEnumValidatorAttribute.cs
- CompositionTarget.cs
- CaseExpr.cs
- WinEventQueueItem.cs
- HtmlTableRow.cs
- ResolvePPIDRequest.cs
- RangeContentEnumerator.cs
- ImageConverter.cs
- RowsCopiedEventArgs.cs
- QuaternionValueSerializer.cs
- WinOEToolBoxItem.cs
- Monitor.cs
- SqlDataAdapter.cs
- RequestStatusBarUpdateEventArgs.cs
- SqlClientWrapperSmiStreamChars.cs
- RequestCacheEntry.cs
- NativeMethodsCLR.cs
- EventData.cs
- NonVisualControlAttribute.cs
- BigInt.cs
- ConfigurationPermission.cs
- Rectangle.cs