如何在.NET中获取父项目的程序集名称?

时间:2014-09-25 09:19:57

标签: .net dll reflection

我有一个ASP.NET应用程序和类库项目的解决方案。 ASP.NET应用程序正在使用类库项目。

我想检查类库中ASP.NET应用程序的程序集名称。

实际上我有一个带有单独Model项目的MVC应用程序。 MVC应用程序使用Model项目。我在另一个项目中创建了一个RemoteWithServerSideAttribute并在模型中使用它。在RemoteWithServerSideAttribute类中,我需要控制器程序集信息来调用方法。如果我使用Assembly.GetCallingAssembly,我会收到System.ComponentModel.DataAnnotations汇编信息,因为RemoteWithServerSideAttribute是从RemoteAttribute内的System.ComponentModel.DataAnnotations继承的。

我想要的是获取MVC项目的程序集信息。

2 个答案:

答案 0 :(得分:1)

不确定这是否是您要找的,但您可以使用System.Reflection来获取执行装配信息或条目装配信息。

因此,如果您从Web应用程序调用ClassLibrary中的方法,那么;

System.Reflection.Asembly.GetExecutingAssembly().GetName().Name会为您提供类库的名称

System.Reflection.Assembly.GetCallingAssembly().GetName().Name将为您提供Web应用程序的名称。

答案 1 :(得分:1)

查看Assembly.GetCallingAssembly here

例如,你可以从中获得FullNameGetName()