13

我得到的程序集名称如下:

String fullName = Assembly.GetAssembly(typeof(CP.Proj.ILogger)).FullName;

我得到以下信息:

CP.Proj,版本=1.0.0.0,文化=中性,PublicKeyToken=null

有没有办法只获取程序集名称"CP.Proj",而不获取版本和其他信息?

4

2 回答 2

38

您需要通过Assembly.GetName()方法获取该程序集的AssemblyName对象

Assembly.GetAssembly(typeof(CP.Proj.ILogger)).GetName().Name

如果程序集是调用该方法的程序集,您可以使用:

string name = Assembly.GetCallingAssembly().GetName().Name;

甚至创建一个实用方法

public static string GetAssemblyShortName()
{
    return Assembly.GetCallingAssembly().GetName().Name;
}
于 2013-11-06T11:10:26.487 回答
5

尝试这个 ,

**1**
System.Reflection.Assembly.GetExecutingAssembly().GetName().Name


**2**
typeof(Program).Assembly.GetName().Name;
于 2013-11-06T11:11:59.017 回答