技术开发 频道

构建和使用多文件程序集


【IT168技术文档】

  现在已经构建和使用了单文件程序集,下面开始构建一个多文件程序集。前面已经介绍过,多文件程序集是相关模块的集合,这些模块作为一个单元被部署和版本化。在编写本书的时候,Visual Studio 2005并不支持C#多文件程序集的项目模板,因此如果一定要构建它的话,那就只能使用命令行编译器(csc.exe)。

  我们将会创建一个名为AirVehicles的多文件程序集。其主模块airvehicles.dll只包含一个Helicopter类类型。其关联的清单(同样包含在airvehicles.dll中)列出了一个名为ufo.netmodule的额外文件,该文件包含了另外一个类类型Ufo。尽管两个类类型物理上被包含在两个二进制文件中,但我们把它们放到同一个命名空间(AirVehicles)下。两个类都将使用C#编写(当然,也可以混合搭配其他的语言)。

  首先,打开一个简单的文本编辑器(例如Notepad记事本),然后编写类Ufo的定义,保存到ufo.cs文件中:
using System; namespace AirVehicles { public class Ufo { public void AbductHuman() { Console.WriteLine("Resistance is futile"); } } }
  把该类编译成一个.NET的模块,导航到包含ufo.cs文件的文件夹,然后使用C#编译器执行以下命令(/target标记的module选项通知csc.exe去生成一个*.netmodule文件而不是*.dll或者*.exe文件):
csc.exe /t:module ufo.cs
  现在查看一下含有ufo.cs文件的文件夹,应该会发现一个名为ufo.netmodule的新文件。接着创建一个名为helicopter.cs的新文件,该文件包含如下类定义:
using System; namespace AirVehicles { public class Helicopter { public void TakeOff() { Console.WriteLine("Helicopter taking off!"); } } }


0
相关文章