Die Ausnahmeklasse von C # verfügt über eine Quelleneigenschaft, die standardmäßig auf den Namen der Assembly festgelegt ist.
Gibt es eine andere Möglichkeit, diese genaue Zeichenfolge zu erhalten (ohne eine andere Zeichenfolge zu analysieren)?
Ich habe folgendes versucht:
catch(Exception e)
{
string str = e.Source;
//"EPA" - what I want
str = System.Reflection.Assembly.GetExecutingAssembly().FullName;
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).FullName;
//"EPA.Program"
str = typeof(Program).Assembly.FullName;
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).Assembly.ToString();
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).AssemblyQualifiedName;
//"EPA.Program, EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
}
c#
.net
reflection
assemblyinfo
Patrick
quelle
quelle
Ich benutze die Assembly, um den Titel des Formulars als solchen festzulegen:
quelle
Sie können diesen Code ausprobieren, der die
System.Reflection.AssemblyTitleAttribute.Title
Eigenschaft verwendet:((AssemblyTitleAttribute)Attribute.GetCustomAttribute(Assembly.GetExecutingAssembly(), typeof(AssemblyTitleAttribute), false)).Title;
quelle
Sie können die
AssemblyName
Klasse verwenden, um den Assemblynamen abzurufen, sofern Sie den vollständigen Namen für die Assembly haben:oder
MSDN-Referenz - AssemblyName-Klasse
quelle
Assembly.GetExecutingAssembly().Location
statt sein sollenAssembly.GetExecutingAssembly().FullName
.Assembly.GetExecutingAssembly (). Speicherort
quelle