使用项目链接器在多个项目中共享源代码

更新页 :
页面创建日期 :

关于扩展外接程序

在说明外接程序之前,需要先了解外接程序。

这一次,我们使用了 Visual Studio 2012 的扩展外接程序 Project Linker 2012,其中一些加载项的功能与“项目林克”的功能大致相同。它们的功能相同,但作者不同,而“项目链接器”仅在 Visual Studio 2010 中正常工作。 这一次,我们将讨论 Visual Studio 2012 中的外接程序,因此我们将使用“项目链接器 2012”。

相反,如果您使用的是视觉工作室 2010,则可以将“项目链接器”放在其中。 我认为,您可以设置它的方式与这次描述的方式大致相同。

关于在多个项目之间共享源代码

Visual Studio 中的标准功能是跨项目共享源代码本身。 由于源文件基本上必须位于项目文件所在的文件夹下,因此,例如,如果将项目 A 的源文件拖动到项目 B,则会复制该文件,从而导致代码的双重管理。

首先,我们将讨论 Visual 工作室中的源代码共享功能。 简单地说,它是创建源文件链接(快捷方式)的图像。 要创建代码链接,请执行以下操作:

我们正在创建一个名为应用程序 1 和应用程序 2 的项目,其中源文件的实体由应用程序 1 拥有,应用程序 2 引用源文件。 在下图中,应用程序 1 具有“配置文件加载器.cs”文件,以便应用程序 2 项目引用该文件。

Application1 が ProfileLoader.cs ファイルを持つ

右键单击应用程序 2 项目,然后选择“添加”-“现有项目”。

既存の項目を追加

此时将显示文件选择对话框,选择引用“应用程序 1”文件夹中的“配置文件加载器.cs”文件,单击右下角的“添加按钮右侧的 +”按钮,然后选择“添加为链接”。

ソースファイルをリンクとして追加

配置文件加载器.cs文件将添加到应用程序 2 项目中。 这只是指向“目标 1 配置文件加载器.cs文件的链接,而不是副本。 您可以看到,方形和箭头图标已添加到文件图标的右下角。

如果在此状态下打开并编辑应用程序 2 配置文件加载程序.cs文件,则表示您正在编辑应用程序 1 配置文件加载程序.cs文件。

Application2 にファイルのリンクが追加される

当然,引用的文件与通常放入源文件的方式相同。 由于命名空间仍为应用程序 1,因此可以通过指定命名空间像往常一样使用类,如下图所示。

参照したソースコードを使用

使用项目链接器自动共享源代码

如果只有两个项目共享源文件,或者只有几个文件要共享,则可以手动共享源文件,但如果您有许多项目或文件,则手动工作相当麻烦。 由于上述操作一次可以共享的文件数是每个文件夹,因此对文件夹进行分层时必须执行相同的步骤。 此外,如果要更改文件夹的层次结构,则必须在所有项目中重新设置它。

您可以使用以下视觉工作室扩展“项目链接器”自动执行这些操作。 请注意,除非视觉工作室的版大于或等于专业版,否则扩展不可用。

从以下 URL 下载:

Project Linker 2012 ダウンロード

下载文件后,双击它以启动它。 它采用安装程序格式。 在安装之前,请关闭所有视觉工作室。

ProjectLinker.vsix ファイルをダブルクリックしてインストール

确保已选中要安装的 Visual 工作室,然后单击“安装”按钮。

インストール画面

成功安装后,请将其关闭。

インストール完了

安装完成后,打开具有多个项目的解决方案文件。 假设项目“应用程序 1”具有源文件的实体,而应用程序 2 具有引用。

右键单击要引用的项目,然后选择“添加项目链接”。

コード構成を共有するプロジェクトのリンク作成

打开对话框后,选择引用的“应用程序 1”项目。 选择具有源文件实体的项目,如标题中“选择源项目”中所述。 选择后,单击“确定”按钮。

如果选中“链接所有项目默认”,则当您按下“确定”按钮时,应用程序 1 的文件和文件夹配置将同步到应用程序 2,因此,如果您不想立即同步,请取消选中它。 相反,如果要批量同步,检查它非常有用。

コード参照元プロジェクトの選択

如果链接成功,请单击“确定”按钮。

リンク成功

应用程序 2 链接到应用程序 1,因此让我们尝试将类添加到应用程序 1。 创建项目链接后,您将使用应用程序 1,它基本上是引用。

右键单击项目,然后选择“添加”-“新建项目”。

追加 - 新しい項目

添加类。 类可以添加所需的内容。 在这里,我们创建了一个名为“字符串帮助器”的类,以帮助编辑字符串。

クラスの追加

添加源文件时,将自动将文件链接到应用程序 2 项目。

ソースファイルのリンクが自動的に作成される

尝试创建文件夹。

フォルダの作成

还会自动创建文件夹。 顺便说一下,由于文件夹没有链接的概念,因此创建物理文件夹。

フォルダも自動的に作成される

如果将文件移动到刚刚创建的文件夹中,则目标将自动移动。

ファイルの移動

尝试删除文件夹及其中的文件。

フォルダの削除

同样,链接将被删除。 这样,项目链接器可以在多个项目之间同步文件和文件夹配置。

フォルダとファイルの削除も同期される

当有多个项目链接时,您可以查看当前状态。 从菜单中的“项目”中选择“编辑项目链接”。

在这里,您可以查看链接列表并取消链接。 如果要取消链接,请从列表中选择链接,然后单击“取消链接”按钮。