MissingMethodException Class
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
The exception that is thrown when there is an attempt to dynamically access a method that does not exist.
System.Exception
System.SystemException
System.MemberAccessException
System.MissingMemberException
System.MissingMethodException
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
The MissingMethodException type exposes the following members.
| Name | Description | |
|---|---|---|
|
MissingMethodException() | Initializes a new instance of the MissingMethodException class. |
|
MissingMethodException(String) | Initializes a new instance of the MissingMethodException class with a specified error message. |
|
MissingMethodException(SerializationInfo, StreamingContext) | Initializes a new instance of the MissingMethodException class with serialized data. |
|
MissingMethodException(String, Exception) | Initializes a new instance of the MissingMethodException class with a specified error message and a reference to the inner exception that is the cause of this exception. |
|
MissingMethodException(String, String) | Initializes a new instance of the MissingMethodException class with the specified class name and method name. |
| Name | Description | |
|---|---|---|
|
Data | Gets a collection of key/value pairs that provide additional user-defined information about the exception. (Inherited from Exception.) |
|
HelpLink | Gets or sets a link to the help file associated with this exception. (Inherited from Exception.) |
|
HResult | Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception. (Inherited from Exception.) |
|
InnerException | Gets the Exception instance that caused the current exception. (Inherited from Exception.) |
|
Message |
Gets the text string showing the class name, the method name, and the signature of the missing method. This property is read-only. (Overrides MissingMemberException.Message.) In XNA Framework 3.0, this member is inherited from Exception.Message. |
|
Source | Gets or sets the name of the application or the object that causes the error. (Inherited from Exception.) |
|
StackTrace | Gets a string representation of the immediate frames on the call stack. (Inherited from Exception.) |
|
TargetSite | Gets the method that throws the current exception. (Inherited from Exception.) |
| Name | Description | |
|---|---|---|
|
Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
|
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
|
GetBaseException | When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions. (Inherited from Exception.) |
|
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
|
GetObjectData | Sets the SerializationInfo object with the class name, the member name, the signature of the missing member, and additional exception information. (Inherited from MissingMemberException.) |
|
GetType |
Gets the runtime type of the current instance. (Inherited from Exception.) In XNA Framework 3.0, this member is inherited from Object.GetType(). |
|
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
|
ToString | Creates and returns a string representation of the current exception. (Inherited from Exception.) |
| Name | Description | |
|---|---|---|
|
SerializeObjectState | Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception. (Inherited from Exception.) |
| Name | Description | |
|---|---|---|
|
ClassName | Holds the class name of the missing member. (Inherited from MissingMemberException.) |
|
MemberName | Holds the name of the missing member. (Inherited from MissingMemberException.) |
|
Signature | Holds the signature of the missing member. (Inherited from MissingMemberException.) |
Normally a compilation error is generated if code attempts to access a nonexistent method of a class. MissingMethodException is designed to handle cases where an attempt is made to dynamically access a renamed or deleted method of an assembly that is not referenced by its strong name. MissingMethodException is thrown when code in a dependent assembly attempts to access a missing method in an assembly that was modified.
MissingMethodException uses the HRESULT COR_E_MISSINGMETHOD, that has the value 0x80131513.
For a list of initial property values for an instance of MissingMethodException, see the MissingMethodException constructors.
This example shows what happens if you attempt to use reflection to call a method that does not exist and access a field that does not exist. The application recovers by catching the MissingMethodException, MissingFieldException, and MissingMemberException.
using System; using System.Reflection; public class App { public static void Main() { try { // Attempt to call a static DoSomething method defined in the App class. // However, because the App class does not define this method, // a MissingMethodException is thrown. typeof(App).InvokeMember("DoSomething", BindingFlags.Static | BindingFlags.InvokeMethod, null, null, null); } catch (MissingMethodException e) { // Show the user that the DoSomething method cannot be called. Console.WriteLine("Unable to call the DoSomething method: {0}", e.Message); } try { // Attempt to access a static AField field defined in the App class. // However, because the App class does not define this field, // a MissingFieldException is thrown. typeof(App).InvokeMember("AField", BindingFlags.Static | BindingFlags.SetField, null, null, new Object[] { 5 }); } catch (MissingFieldException e) { // Show the user that the AField field cannot be accessed. Console.WriteLine("Unable to access the AField field: {0}", e.Message); } try { // Attempt to access a static AnotherField field defined in the App class. // However, because the App class does not define this field, // a MissingFieldException is thrown. typeof(App).InvokeMember("AnotherField", BindingFlags.Static | BindingFlags.GetField, null, null, null); } catch (MissingMemberException e) { // Notice that this code is catching MissingMemberException which is the // base class of MissingMethodException and MissingFieldException. // Show the user that the AnotherField field cannot be accessed. Console.WriteLine("Unable to access the AnotherField field: {0}", e.Message); } } } // This code example produces the following output: // // Unable to call the DoSomething method: Method 'App.DoSomething' not found. // Unable to access the AField field: Field 'App.AField' not found. // Unable to access the AnotherField field: Field 'App.AnotherField' not found.
Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.