通过System.Reflection.Assembly类中提供的方法和属性不能直接获取组件中的命名空间列表。但有方法可以直接获得Assembly中的所有类型,我们便可以通过获取的类型来得到命名空间名称。

具体代码如下所示:

其中的Assembly.GetCallingAssembly()是获取当前的Assembly对象,也可以通过Assembly.LoadFrom等方法载入dll获取Assembly对像。

protected void ChooseDLL_Click(object sender, EventArgs e)
{
//string fullPath = Path.GetFullPath(this.FileUpload_DLL.PostedFile.FileName);
//string name = this.FileUpload_DLL.PostedFile.FileName;
//string path = Server.MapPath(name);
//Response.Write(fullPath+"--"+path+"--");
System.Reflection.Assembly dllFile;
Type type;
try
{
dllFile = System.Reflection.Assembly.Load("TangramServer");

Type[] typeList = dllFile.GetTypes();

IList<string> namespacelist = new List<string>();
foreach (Type type1 in typeList)
{
if (!namespacelist.Contains(type1.Namespace))
{
namespacelist.Add(type1.Namespace);
}
}

foreach (string name in namespacelist)
{
Response.Write(name+"~");
}

type = dllFile.GetType();
string Namespac = type.Namespace;

//string dllName = dllFile.GetName().ToString();
//Response.Write(Namespac + "--" + type.Name+"--="+type.FullName);

foreach (Type className in dllFile.ExportedTypes)
{
//ComponentEntity entity = new ComponentEntity();
//entity.Component_Name = className.Name.ToString();
//entity.Component_Feature = "";
//libraryBll.Add(entity);
Response.Write(className.Namespace.ToString()+"\r\n**"+className.Name);
}
}
catch (Exception ex)
{

}

}

获取一个Assembly中的命名空间列表的更多相关文章

  1. 获取一个字符串中每一个字母出现的次数使用map集合

    package 获取字符串中单字符出现次数; import java.util.Scanner; import java.util.TreeMap; /* * 需求:获取一个字符串中每一个字母出现的次 ...

  2. 如何获取一个AlertDialog中的EditText中输入的内容

    怎么获取一个AlertDialog中的EditText中输入的内容? new AlertDialog.Builder(this)   .setTitle("请输入")   .set ...

  3. String 类中的几个练习--获取指定字符串中,大写字母、小写字母、数字的个数||获取一个字符串中,另一个字符串出现的次数

    package cn.homework.demo1; public class GetCount { /* * 获取一个字符串中,另一个字符串出现的次数 * 思想: * 1. indexOf到字符串中 ...

  4. C#获取一个数组中的最大值、最小值、平均值

    C#获取一个数组中的最大值.最小值.平均值 1.给出一个数组 ,,,,,-,,,,}; 2.数组Array自带方法 本身是直接可以调用Min(),Max(),Average()方法来求出 最小值.最大 ...

  5. Java 获取一个字符串中,另一个字符串出现的次数

    Java 获取一个字符串中,另一个字符串出现的次数 思想: 1. indexOf到字符串中到第一次出现的索引2. 找到的索引+被找字符串长度,截取字符串3. 计数器++ 代码实现: public cl ...

  6. Python 网络爬虫 009 (编程) 通过正则表达式来获取一个网页中的所有的URL链接,并下载这些URL链接的源代码

    通过 正则表达式 来获取一个网页中的所有的 URL链接,并下载这些 URL链接 的源代码 使用的系统:Windows 10 64位 Python 语言版本:Python 2.7.10 V 使用的编程 ...

  7. 获取一个表中的字段总数(mysql) Navicat如何导出Excel格式表结构 获取某个库中的一个表中的所有字段和数据类型

    如何获取一个表中的字段总数 1.function show columns from 表明: 结果 : 2.functiuon select count(*) from INFORMATION_SCH ...

  8. 简单的Java网络爬虫(获取一个网页中的邮箱)

    import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; impo ...

  9. 随机获取一个集合(List, Set)中的元素,随机获取一个Map中的key或value

    利用Java提供的Random类.从List或Set中随机取出一个元素,从Map中随机获取一个key或value. 因为Set没有提供get(int index)方法,仅仅能先获取一个随机数后.利用一 ...

随机推荐

  1. Office 如何双面打印Word文档

    打印之前勾选手动双面打印,然后开始打印(不管当前文档有几页,要打印几份,会只打印奇数页面)   只要开始打印奇数页面,就会有一个弹出窗口,当完成之后把打印的东西拿出来,整个翻面再放回打印机,点击确定会 ...

  2. MPlayer源代码分析

    http://blog.csdn.net/leixiaohua1020/article/details/11885509 一.Mplayer支持的格式 MPlayer是一个LINUX下的视频播放器,它 ...

  3. UISearchbar placeholder 文本和icon居左 iOS7

    在iOS7 下测试了一些方法,发现还是攺变不了文本的居左,最后发现了一个nb的招: _searchBar = [[UISearchBar alloc]initWithFrame:CGRectZero] ...

  4. Unity3D调用摄像头显示当前拍摄画面

    原地址:http://blog.csdn.net/awnuxcvbn/article/details/18621265 using UnityEngine; using System.Collecti ...

  5. java String->float,float->int

    类型转换代码 : String sourceStr = "0.0"; String类型 float sourceF = Float.valueOf(sourceStr); floa ...

  6. 基于Python-Flask实现的网站例子

    概述 使用Flask写的体育网站 包括(注册 论坛 文章评论 组建战队 后台管理)等功能 示例地址文中有写 萌新 请多指教 详细 代码下载:http://www.demodashi.com/demo/ ...

  7. 使用AsParallel 进行并行化处理数据

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...

  8. 重写spring cloud config 本地bootstrap

    在spring-cloud中使用了config-server之后,需要在client端加入bootstrap作为配置文件,其中通常包含如下: spring.application.name=ms-as ...

  9. WCF实现客户端和服务端

    service side 1.定义ServiceContract: 2.new a ServiceHost 3. add endpoint using System.ServiceModel; nam ...

  10. c#删除 list中的元素和怎么去除空元素

    ; i >= ; i--) { if (list[i].NO == item.NO) { list.RemoveAt(i); } } public void RemoveItemFromList ...