感觉程序集是用来解决dll文件版本的, 可以解决同一系统下不同dll同时工作的问题.

解决方案 »

  1.   

    我先解释你第一个问题,其他的我还不清楚:1. 程序集是什么样子的概念呢?
    程序集简单来说就是以前通常所说的DLL(windows 98 下面的动态连接库)
    它是存放一个程序公共代码的地方,就好比一个大型软件的EXE文件,它可能只有几十KB,仅仅只是一个程序的入口,它实现的部分主要在DLL(现在叫程序集)当中.
    程序集在一个项目中主要为了将代码的实现进行分离,以便管理,一个EXE就是一个程序集,如果这个EXE要实现不同的功能而加载的不同的DLL也是程序集,每个程序集都为了实现特定的某个功能而单独编码,在大型软件项目中尤其重要.namespace只是命名空间
    比方你的程序要使用到对文本文件的操作,就需要用到IO,如果你不在文件的开头声明Using System.IO; 那么你以后要使用到对特殊文件类型的操作,比如对目录的操作DirectoryInfo这个类型定义的时候,你就需要使用DirectoryInfo的全名,就是System.IO.DirectoryInfo youName,这样的话就增加的代码编写难度,简单来说namespace就是方便你使用系统特定类型而定义的.不用去敲复杂的代码.
    namespace 和程序集是不同的两个概念还有.net Framework是一个平台,它是一个公共语言规范,简单来说就是最早的win API或者是MFC 的升级,所有的Visual Studio 开发出来的各种程序都是基于这个平台的.不过针对不同的开发语言,它所提供的类库,当然也就不一样了,但是同一个软件在VS上你可以用各种它支持的语言来编写,然后一起编译出完整代码.
      

  2.   

    问这么多也放点分啊,CSDN流行这个程序集,就是你写一个项目编译后的产物,叫Assembly
      

  3.   

    后缀名可以是,.dll 也可以是.exe但这个.exe和原来的二进制.exe好象有所不同,反正不能在没有net framework的机器上跑..:)
      

  4.   

    哦,基本上明白你们的意思了。我有些时候很少上来的,我不是很注意给分的,有问题就上来了。看了你们的意思,我感觉是这样的:
    在.NET里面,程序集就是一些类的集合,就是一些提供调用的功能模块。
    比如:mscorlib.dll就是一个程序集,是MSIL的文件格式。现在的问题是:我要定义两个类A和B,我想让他们不要在同一个程序集中,我应该怎么操作?
      

  5.   

    主要是我不明白“internal”关键字的使用。
      

  6.   

    现在的问题是:我要定义两个类A和B,我想让他们不要在同一个程序集中,我应该怎么操作?nsp1.A();nsp2.A();nsp1.B();
    nsp2.B();
      

  7.   

    using System;namespace nsp1
    {
        internal class A
        {
            internal static int ia = 1;        internal static void print()
            {
                System.Console.WriteLine("class A.");
            }
        }
    }namespace nsp2
    {    public class ProMain
        {
            public static void Main()
            {
                nsp1.A.ia = 2; //不是可以调用吗?
                System.Console.WriteLine("ia: " + nsp1.A.ia);
                nsp1.A.print(); //不是可以调用吗?
            }
        }
    }