如何在c#中保留项目之间共享的公共代码?

我是c#的新手,我正在试图找到一个很好的解决方案,以便将公共代码保存在几个项目所使用的某个地方。

首先,我尝试将其保存在.cs文件中并将其添加到需要代码的项目中,但这会复制文件,这意味着如果我对公共代码进行任何更改,它将不会反映在使用此代码的各种项目中。

然后我尝试创建一个类库,并使用代码在项目中引用DLL。 首先,即使我遵循教程,我也无法让它工作,即使我引用DLL我仍然无法以某种方式使用它,但即使这样工作它仍然需要一个额外的DLL与我的应用程序捆绑在一起一些常见的代码,这不是我想要的。

有没有办法保持公共代码是REFERENCED而无需发送DLL w

最好的解决方案是在每个项目中引用一个公共库。 但是你说你不想这样做,因为它需要捆绑额外的dll,这真的是一个大问题吗? 你还提到你不能让它工作,发布错误的细节等,我们将能够提供帮助。

假设您使用Visual Studio,另一个选项是将公共文件链接到您的项目而不是添加它。 这将使公共文件保持在其当前位置,而不是将其移动到项目目录中。

要执行此操作,请转到添加现有文件对话框,但在“添加”按钮上单击向下箭头并选择“链接”。

如上所述,使用通用库是最佳解决方案,因此如果捆绑这是一个不可逾越的问题,您可以考虑使用ilmerge。 这会将您的所有dll / exes合并到一个文件中,然后您可以部署该文件。

您可以添加指向公共文件的链接:

  1. 右键单击该项目
  2. 选择“添加”=>“现有项目…”
  3. 找到您要共享的.cs文件
  4. 单击“添加”框上的下拉列表
  5. 选择,添加为链接。

希望这可以帮助!

你快到了。 您可以添加现有文件,但请注意,您可以展开“添加”按钮并选择链接到该文件。

您可以将链接文件添加到项目中 – 这不会创建副本,而只是引用它。

请参阅链接页面中的“将现有项目添加为链接”部分:

要创建指向现有项目的链接:

  1. 在Solution Explorer中,选择目标项目。
  2. 在“项目”菜单上,选择“添加现有项”。
  3. 在“添加现有项”对话框中,找到并选择要链接的项目项。
  4. 从“打开”按钮下拉列表中,选择“添加为链接”。

在visual studio中,您可以添加指向现有项目的链接:

在解决方案资源管理器中,右键单击并选择“添加” – >“现有项目”…浏览到该文件,而不是单击“添加”,选择“添加为链接”。

但我建议对公共代码使用单独的项目。