Condividi tramite


TypeLoadException.TypeName Proprietà

Definizione

Ottiene il nome completo del tipo che provoca l'eccezione.

public:
 property System::String ^ TypeName { System::String ^ get(); };
public string TypeName { get; }
member this.TypeName : string
Public ReadOnly Property TypeName As String

Valore della proprietà

String

Nome di tipo completo.

Esempio

Nell'esempio seguente viene tentato di caricare un tipo non esistente dall'assembly mscorlib. L'eccezione risultante viene rilevata e vengono visualizzati i TypeName valori e Message . Per eseguire questo esempio di codice, è necessario specificare il nome dell'assembly completo. Per informazioni su come ottenere il nome dell'assembly completo, vedere Nomi di assembly.

// Load the mscorlib assembly and get a reference to it.
// You must supply the fully qualified assembly name for mscorlib.dll here.
Assembly^ myAssembly = Assembly::Load( "Assembly text name, Version, Culture, PublicKeyToken" );
try
{
   Console::WriteLine( "This program throws an exception upon successful run." );
   
   // Attempt to load a non-existent type from an assembly. 
   Type^ myType = myAssembly->GetType( "System.NonExistentType", true );
}
catch ( TypeLoadException^ e ) 
{
   // Display the name of the Type that was not found.
   Console::WriteLine( "TypeLoadException: \n\tError loading the type '{0}' from the assembly 'mscorlib'", e->TypeName );
   Console::WriteLine( "\tError Message = {0}", e->Message );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( "Exception: Error Message = {0}", e->Message );
}
using System;
using System.Reflection;

public class TypeLoadException_TypeName
{
   public static void Main()
   {
      // Get a reference to the assembly mscorlib.dll, which is always
      // loaded. (System.String is defined in mscorlib.)
      Assembly mscorlib = typeof(string).Assembly;

      try
      {
         Console.WriteLine("Attempting to load a type that does not exist in mscorlib.");
         // The boolean parameter causes an exception to be thrown if the
         // type is not found.
         Type myType = mscorlib.GetType("System.NonExistentType", true);
      }
      catch (TypeLoadException ex)
      {
         // Display the name of the type that was not found, and the
         // exception message.
         Console.WriteLine("TypeLoadException was caught. Type = '{0}'.",
             ex.TypeName);
         Console.WriteLine("Error Message = '{0}'", ex.Message);
      }
   }
}
/*
 This code example produces output similar to the following:

Attempting to load a type that does not exist in mscorlib.
TypeLoadException was caught. Type = 'System.NonExistentType'
Error Message = 'Could not load type System.NonExistentType from assembly mscorl
ib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.'
 */
Imports System.Reflection

Public Class Example
   Public Shared Sub Main()
      ' Get a reference to the assembly mscorlib.dll, which is always
      ' loaded. (System.String is defined in mscorlib.)
      Dim tString As Type = GetType(String)
      Dim mscorlib As [Assembly] = tString.Assembly

      Try
         Console.WriteLine("Attempting to load a type that does not exist in mscorlib.")
         ' The boolean parameter causes an exception to be thrown if the
         ' type is not found.
         Dim myType As Type = mscorlib.GetType("System.NonExistentType", True)
      Catch ex As TypeLoadException
         ' Display the name of the type that was not found, and the 
         ' exception message.
         Console.WriteLine("TypeLoadException was caught. Type = '{0}'.", _
             ex.TypeName)
         Console.WriteLine("Error Message = '{0}'", ex.Message)
      End Try
   End Sub 
End Class 
'
' This example produces output similar to the following:
'
'Attempting to load a type that does not exist in mscorlib.
'TypeLoadException was caught. Type = 'System.NonExistentType'
'Error Message = 'Could not load type System.NonExistentType from assembly mscorl
'ib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.'

Note per gli eredi

Quando si esegue l'override TypeName in una classe derivata, assicurarsi di chiamare la proprietà della TypeName classe base.

Questa proprietà è di sola lettura.

Si applica a