在多个项目中使用相同的模块

And*_*her 6 .net vb.net oop visual-studio-2010 visual-studio

我正在使用Visual Studio 2010并在VB.NET中编码.

我的问题是我已经收集了我编写的所有模块并打算重用它们并将它们放在一个单独的文件夹中.当我想将上述文件夹中的模块添加到任何给定项目时,它会获取模块的副本并放置在项目的源代码文件夹中,而不是引用包含所有其他模块的文件夹中的模块.

是否可以在我的项目中包含一个模块并将其保存在包含所有其他模块的文件夹中,这样当我改进模块时,它将影响使用/引用该模块的所有项目.而不是我必须手动将新模块复制到使用/引用模块的所有项目.现在我有多个完全相同模块的实例,当我改进代码或添加功能时,我需要手动更新?

Cod*_*ray 8

在尝试最小化代码重复方面,你肯定是在正确的轨道上!您要做的最好的事情是将代码编译成可重用的类库,您可以在多个项目中使用它.

  1. 在Visual Studio中创建一个新的"类库"项目.

  2. 将所有模块移动到该项目中.

  3. 编译该项目,并记下生成的DLL文件的位置.

  4. 将该DLL文件的引用添加到您希望能够调用模块公开的方法的每个其他项目.

将此单个代码文件添加到每个项目的方法的好处是,如果您更新或修改类库中的代码,您只需重新编译类库即可.

此外,如果您计划部署依赖于相同模块的多个不同应用程序,这将允许它们中的每一个动态调用作为类库的一部分公开的方法.


小智 7

Marcel J. Kloubert提供的解决方案更好.(因为在你描述的设置中,它太容易意外破坏功能.)

但是你可以按照你的要求做到:
1)右键单击你的项目
2)选择添加 - >现有项目
3)选择你的文件
4)点击添加
5 旁边的小东西选择Add as Link


小智 0

您可以将模块移动到单独的中央库项目,该项目可以包含在项目的每个解决方案中。

如果需要,您可以在每个项目中添加对该库的引用。