当前位置:  开发笔记 > 编程语言 > 正文

从C#中引用的DLL执行程序集名称

如何解决《从C#中引用的DLL执行程序集名称》经验,为你挑选了4个好方法。

从C#中引用的类库获取执行程序集的应用程序名称(即MyApplication.exe)的最佳方法是什么?

我需要打开应用程序的app.config来检索引用的DLL的一些appSettings变量.



1> Ray Hayes..:

要获得问题标题的答案:

// Full-name, e.g. MyApplication, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
string exeAssembly = Assembly.GetEntryAssembly().FullName;

// or just the "assembly name" part (e.g. "MyApplication")
string exeAssemblyName = Assembly.GetEntryAssembly().GetName().Name;

正如@Ben所提到的,既然你提到想要获取配置信息,请使用ConfigurationManager该类.


你真好,大约两年过去,你编辑你的答案,包括我的解决方案.你怎么这么久?:P

2> Ben Scheirma..:

如果您想获取当前appdomain的配置文件,那么您需要做的就是:

ConfigurationManager.AppSettings....

(当然这需要引用System.Configuration).

要回答你的问题,你可以像雷说(或使用Assembly.GetExecutingAssembly().FullName)那样做,但我认为问题更容易解决使用ConfigurationManager.


`Assembly.GetExecutingAssembly()`没有得到OP正在寻找的程序集.`Assembly.GetEntryAssembly()`的确如此

3> Aoi Karasu..:

要获得没有版本等的确切名称,请使用:

string appName = Assembly.GetEntryAssembly().GetName().Name;

适用于.NET v1.1及更高版本.



4> Jaider..:

您可以通过类类型获取程序集...

typeof(MyClass).Assembly

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有