如何获取一个dll中的命名空间名称?[关于反射获取类的问题]

kk706 2010-11-16 09:28:50
通过反射从一个dll中获取信息,如何获取这个dll中namespace的名称?

...全文
511 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
机器人 2010-11-16
  • 打赏
  • 举报
回复
那可以这样:


Assembly asm = Assembly.GetExecutingAssembly();
Type[] types = asm.GetTypes();
List<string> namespaces = new List<string>();

foreach(Type t in types)
{
if (!namespaces.Contains(t.Namespace))
namespaces.Add(t.Namespace);
}
kk706 2010-11-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fangxinggood 的回复:]

应该是从某个Type上获取Namespace,一个dll中可能有多个namespace的。

Type t = obj.GetType();
string namespace = t.Namespace;
[/Quote]

Type t = obj.GetType(); GetType方法取值的时候,应该是 命名空间.类名 ,这样的话就是已经知道了命名空间名称了。
我的意思是,不知道dll里有多少namespace,挨个取名称。

还是感谢2楼
机器人 2010-11-16
  • 打赏
  • 举报
回复
应该是从某个Type上获取Namespace,一个dll中可能有多个namespace的。

Type t = obj.GetType();
string namespace = t.Namespace;

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧