español - assembly get version c#
Obtener nombre de ensamblado (4)
La clase de excepción de C # tiene una propiedad de origen que se establece de forma predeterminada en el nombre del ensamblaje.
¿Hay alguna otra forma de obtener esta cadena exacta (sin analizar una cadena diferente)?
He probado lo siguiente:
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"
}
Puede probar este código que usa la propiedad System.Reflection.AssemblyTitleAttribute.Title
:
((AssemblyTitleAttribute)Attribute.GetCustomAttribute(Assembly.GetExecutingAssembly(), typeof(AssemblyTitleAttribute), false)).Title;
Puede usar la clase AssemblyName
para obtener el nombre del ensamblado, siempre que tenga el nombre completo del ensamblado:
AssemblyName.GetAssemblyName(Assembly.GetExecutingAssembly().FullName).Name
o
AssemblyName.GetAssemblyName(e.Source).Name
Uso la Asamblea para establecer el título del formulario como tal:
private String BuildFormTitle()
{
String AppName = System.Reflection.Assembly.GetEntryAssembly().GetName().Name;
String FormTitle = String.Format("{0} {1} ({2})",
AppName,
Application.ProductName,
Application.ProductVersion);
return FormTitle;
}
System.Reflection.Assembly.GetExecutingAssembly().GetName().Name
o
typeof(Program).Assembly.GetName().Name;