在两个项目之间共享源文件,而不是整个目录/文件夹

本文关键字:文件夹 源文件 两个 项目 共享 之间 | 更新日期: 2023-09-27 18:12:14

嗨,我有两个项目,让我们说A和B,他们有源文件是相同的,现在我想如果文件在一个项目改变它反映在另一个项目。简而言之,我想要所有这些共享源文件的一个副本,

重要的是,由于项目结构的关系,这些文件在不同的文件夹中,我不能把它们放在一个共同的文件夹中。

项目
——才能视图(文件夹)
,,,,,, Login.cs
,,,,,, Stock.cs
——才能控制器(文件夹)
,,,,,, LoginController.cs
,,,,,, StockController.cs

项目B
——才能视图(文件夹)
,,,,,, Login.cs
,,,,,, WholeSellers.cs
——才能控制器(文件夹)
,,,,,, LoginController.cs
,,,,,, WholeSellersController.cs

现在在上面的项目中,你可以看到login和LoginController是共享文件,但是在不同的文件夹中,由于项目文件夹结构的限制,我不能把它们放在一个文件夹中,也不能创建共享的单独的项目,因为它们不能单独构建。

我已经使用了Git子模块,但它创建了一个公共文件夹,这不是我的情况,还有其他解决方案吗?

在两个项目之间共享源文件,而不是整个目录/文件夹

考虑将通用功能提取到nuget包中,并将其安装在两个项目上。

创建nuget包:https://blogs.msdn.microsoft.com/mvpawardprogram/2016/06/28/creating-nuget-packages/

  1. 创建新的共享项目project Core
  2. 将共享代码移到那里。控制器"LoginController"和视图"Login.cs"
  3. 将"LoginController"重命名为"BaseLoginController"
  4. 从"BaseLoginController"继承项目A和B中的LoginController
  5. 使用虚拟路径提供者重用MVC视图
<>之前项目一个——视图(文件夹)——Stock.cs——控制器(文件夹)——LoginController.cs——StockController.cs项目B——视图(文件夹)——WholeSellers.cs——控制器(文件夹)——LoginController.cs——WholeSellersController.cs项目核心——视图(文件夹)——Login.cs——控制器(文件夹)——BaseLoginController.cs之前

使用虚拟路径提供程序重用MVC视图

创建指向文件夹及其文件的符号链接将解决问题。

ln -s/path/to/folderContainingFiles/path/to/symlink